[ http://jira.codehaus.org/browse/MCLIRR-16?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Jochen Wiedmann closed MCLIRR-16. --------------------------------- Resolution: Fixed Closing due to lack of response. Feel free to reopen, should you desire to do so. > Clirr cannot resolve transitive dependencies correctly having a version range > specified. > ---------------------------------------------------------------------------------------- > > Key: MCLIRR-16 > URL: http://jira.codehaus.org/browse/MCLIRR-16 > Project: Maven 2.x Clirr Plugin > Issue Type: Bug > Affects Versions: 2.2.2 > Reporter: johan1 > > If a previous version has dependencies declared with a version range, e.g. > [1.0,), clirr will fail with the following very missleading error: > [INFO] [clirr:clirr] > [INFO] Comparing to version: 1.1 > [WARNING] Attempting to build MavenProject instance for Artifact > (com.acme.test:mytest:1.1) of type: jar; constructing POM artifact instead. > [ERROR] No previous version was found. Use 'comparisonArtifacts' for explicit > configuration if you think this is wrong. > [ERROR] VM #displayTree: error : too few arguments to macro. Wanted 2 got 0 > [ERROR] VM #menuItem: error : too few arguments to macro. Wanted 1 got 0 > [INFO] > ------------------------------------------------------------------------ > The first problem is, that the clirr plugin completely suppresses the real > cause. Starting in line 70 of ClirrCheckMojo it says: > catch ( MissingPreviousException e ) > { > getLog().info( "No previous version was found. Use > 'comparisonArtifacts'" > + " for explicit configuration if you think this is > wrong." ); > return; > } > Instead this should be something like: > catch ( MissingPreviousException e ) > { > getLog().debug(e); > getLog().info( "No previous version was found. Use > 'comparisonArtifacts'" > + " for explicit configuration if you think this is > wrong." ); > return; > } > If this line is added one can see the real exception which in my case was: > org.apache.maven.artifact.versioning.OverConstrainedVersionException: > Couldn't find a version in [1.0-beta-10, 1.0-beta-7, 1.0-beta-8, 1.0-beta-9, > 1.0-jsr-01, 1.0-jsr-02, 1.0-jsr-03, 1.0-jsr-04] to match range [1.0,) > groovy:groovy-all:jar:null > from the specified remote repositories: > central (http://repo1.maven.org/maven2) > at > org.apache.maven.artifact.resolver.DefaultArtifactCollector.recurse(DefaultArtifactCollector.java:365) > at > org.apache.maven.artifact.resolver.DefaultArtifactCollector.collect(DefaultArtifactCollector.java:76) > at > org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolveTransitively(DefaultArtifactResolver.java:300) > at > org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolveTransitively(DefaultArtifactResolver.java:288) > at > org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolveTransitively(DefaultArtifactResolver.java:259) > at > org.codehaus.mojo.clirr.AbstractClirrMojo.getTransitiveDependencies(AbstractClirrMojo.java:442) > at > org.codehaus.mojo.clirr.AbstractClirrMojo.resolvePreviousReleaseClasses(AbstractClirrMojo.java:533) > at > org.codehaus.mojo.clirr.AbstractClirrMojo.executeClirr(AbstractClirrMojo.java:315) > at org.codehaus.mojo.clirr.ClirrReport.doReport(ClirrReport.java:250) > at org.codehaus.mojo.clirr.ClirrReport.generate(ClirrReport.java:226) > at org.codehaus.mojo.clirr.ClirrReport.generate(ClirrReport.java:382) > at org.codehaus.mojo.clirr.ClirrReport.execute(ClirrReport.java:189) > at > org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:451) > at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:558) > at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeStandaloneGoal(DefaultLifecycleExecutor.java:512) > at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:482) > at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:330) > at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:291) > at > org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:142) > at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:336) > at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:129) > at org.apache.maven.cli.MavenCli.main(MavenCli.java:287) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315) > at org.codehaus.classworlds.Launcher.launch(Launcher.java:255) > at > org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430) > at org.codehaus.classworlds.Launcher.main(Launcher.java:375) -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe from this list, please visit: http://xircles.codehaus.org/manage_email