Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
2.10.2SDK, 3.0.0SDK
-
None
Description
The jcasgen-maven-plugin integration tests fail when doing a release:prepare, if the local .m2 doesn't have the non-snapshot versions of dependencies for uimaj projects.
I think during release:prepare, the version is modified from e.g. 2.10.3-SNAPSHOT to 2.10.3, and the projects are built but not installed to the .m2 - they're just kept in the maven "reactor".
The maven-invoker-plugin "install" goal, which is supposed to set up a local-repo (used just for testing) with the specified artifacts and their dependencies fails to find the dependencies if they're in the reactor, and findable via normal artifact lookup in the local .m2 and /or remote repositories. This causes the integration tests to fail, but only when running release prepare (again, because this goal is not installing the build artifacts to the local .m2).
This seems new behavior - this used to work; I think it's likely related to maven or maven plugin upgrades.
Workaround: explicitly put all the dependencies from the uimaj project as "top level" dependencies, and not depend on the transitive resolution mechanism. If they're lists at the top level, the invoker:install does find them in the reactor and adds them.