Marshall Schor created UIMA-5901:
------------------------------------

             Summary: workaround broken invoker transitivity when releasing
                 Key: UIMA-5901
                 URL: https://issues.apache.org/jira/browse/UIMA-5901
             Project: UIMA
          Issue Type: Improvement
          Components: Core Java Framework
    Affects Versions: 3.0.0SDK, 2.10.2SDK
            Reporter: Marshall Schor
            Assignee: Marshall Schor
             Fix For: 3.0.1SDK, 2.10.3SDK


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.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to