Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.1
    • Fix Version/s: 2.2
    • Labels:
      None
    • Environment:
      Maven 3.x
    • Number of attachments :
      0

      Description

      The maven-changelog-plugin is using the maven-scm-provider-svnexe for svn repositories. The maven-scm-provider-svnexe is ugin plexus-utils 1.5.6. Because of a nearer dependency from maven-model the plugin will use plexus-utils 1.0.4, causing the plugin to fail.

      See below the dependencies and the stacktrace.

      [DEBUG] Resolving plugin: org.apache.maven.plugins:maven-changelog-plugin with version: 2.1
      [DEBUG] In verifyVersionedPlugin for: org.apache.maven.plugins:maven-changelog-plugin
      [DEBUG] org.apache.maven.plugins:maven-changelog-plugin:maven-plugin:2.1:runtime (selected for runtime)
      [DEBUG]   org.apache.maven:maven-project:jar:2.0:runtime (selected for runtime)
      [DEBUG]     org.apache.maven:maven-profile:jar:2.0:runtime (selected for runtime)
      [DEBUG]       org.apache.maven:maven-model:jar:2.0:runtime (selected for runtime)
      [DEBUG]         org.codehaus.plexus:plexus-utils:jar:1.0.4:runtime (selected for runtime)
      [DEBUG]       org.codehaus.plexus:plexus-utils:jar:1.0.4:runtime (selected for runtime)
      [DEBUG]       org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-8:runtime (selected for runtime)
      [DEBUG]         junit:junit:jar:3.8.1:runtime (selected for runtime)
      [DEBUG]         classworlds:classworlds:jar:1.1-alpha-2:runtime (selected for runtime)
      [DEBUG]     org.apache.maven:maven-model:jar:2.0:runtime (selected for runtime)
      [DEBUG]     org.apache.maven:maven-artifact-manager:jar:2.0:runtime (selected for runtime)
      [DEBUG]       org.apache.maven:maven-repository-metadata:jar:2.0:runtime (selected for runtime)
      [DEBUG]       org.apache.maven:maven-artifact:jar:2.0:runtime (selected for runtime)
      [DEBUG]       org.apache.maven.wagon:wagon-provider-api:jar:1.0-alpha-5:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.0.4:runtime (selected for runtime)
      [DEBUG]     org.apache.maven:maven-artifact:jar:2.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-8:runtime (selected for runtime)
      [DEBUG]       junit:junit:jar:3.8.1:runtime (selected for runtime)
      [DEBUG]       classworlds:classworlds:jar:1.1-alpha-2:runtime (selected for runtime)
      [DEBUG]   org.apache.maven.reporting:maven-reporting-api:jar:2.0:runtime (selected for runtime)
      [DEBUG]     doxia:doxia-sink-api:jar:1.0-alpha-4:runtime (selected for runtime)
      [DEBUG]   org.apache.maven:maven-model:jar:2.0:runtime (selected for runtime)
      [DEBUG]   org.apache.maven.reporting:maven-reporting-impl:jar:2.0:runtime (selected for runtime)
      [DEBUG]     commons-validator:commons-validator:jar:1.1.4:runtime (selected for runtime)
      [DEBUG]     org.apache.maven:maven-plugin-api:jar:2.0:runtime (selected for runtime)
      [DEBUG]     oro:oro:jar:2.0.7:runtime (selected for runtime)
      [DEBUG]     doxia:doxia-core:jar:1.0-alpha-4:runtime (selected for runtime)
      [DEBUG]   doxia:doxia-sink-api:jar:1.0-alpha-4:runtime (removed - nearer found: 1.0-alpha-5)
      [DEBUG]   doxia:doxia-sink-api:jar:1.0-alpha-5:runtime (selected for runtime)
      [DEBUG]   org.apache.maven:maven-settings:jar:2.0:runtime (selected for runtime)
      [DEBUG]   org.apache.maven.scm:maven-scm-api:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-manager-plexus:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]     org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-9:runtime (removed - nearer found: 1.0-alpha-8)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-bazaar:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]     regexp:regexp:jar:1.3:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-7:runtime (removed - nearer found: 1.0-alpha-8)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-clearcase:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-hg:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-cvsexe:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]     org.apache.maven.scm:maven-scm-provider-cvs-commons:jar:1.0:runtime (selected for runtime)
      [DEBUG]       org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-cvsjava:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]     org.netbeans.lib:cvsclient:jar:20060125:runtime (selected for runtime)
      [DEBUG]     ch.ethz.ganymed:ganymed-ssh2:jar:build210:runtime (selected for runtime)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-local:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-perforce:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-starteam:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-svnexe:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]     org.apache.maven.scm:maven-scm-provider-svn-commons:jar:1.0:runtime (selected for runtime)
      [DEBUG]       org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-synergy:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG]   org.apache.maven.scm:maven-scm-provider-vss:jar:1.0:runtime (selected for runtime)
      [DEBUG]     org.codehaus.plexus:plexus-utils:jar:1.1:runtime (removed - nearer found: 1.0.4)
      [DEBUG] Using the following artifacts for classpath of: org.apache.maven.plugins:maven-changelog-plugin:maven-plugin:2.1:
      
      [org.apache.maven:maven-project:jar:2.0:runtime
       org.apache.maven:maven-profile:jar:2.0:runtime
       org.apache.maven:maven-model:jar:2.0:runtime
       org.codehaus.plexus:plexus-utils:jar:1.0.4:runtime
       org.codehaus.plexus:plexus-container-default:jar:1.0-alpha-8:runtime
       junit:junit:jar:3.8.1:runtime
       classworlds:classworlds:jar:1.1-alpha-2:runtime
       org.apache.maven:maven-artifact-manager:jar:2.0:runtime
       org.apache.maven:maven-repository-metadata:jar:2.0:runtime
       org.apache.maven:maven-artifact:jar:2.0:runtime
       org.apache.maven.wagon:wagon-provider-api:jar:1.0-alpha-5:runtime
       org.apache.maven.reporting:maven-reporting-api:jar:2.0:runtime
       doxia:doxia-sink-api:jar:1.0-alpha-5:runtime
       org.apache.maven.reporting:maven-reporting-impl:jar:2.0:runtime
       commons-validator:commons-validator:jar:1.1.4:runtime
       org.apache.maven:maven-plugin-api:jar:2.0:runtime
       oro:oro:jar:2.0.7:runtime
       doxia:doxia-core:jar:1.0-alpha-4:runtime
       org.apache.maven:maven-settings:jar:2.0:runtime
       org.apache.maven.scm:maven-scm-api:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-manager-plexus:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-bazaar:jar:1.0:runtime
       regexp:regexp:jar:1.3:runtime
       org.apache.maven.scm:maven-scm-provider-clearcase:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-hg:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-cvsexe:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-cvs-commons:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-cvsjava:jar:1.0:runtime
       org.netbeans.lib:cvsclient:jar:20060125:runtime
       ch.ethz.ganymed:ganymed-ssh2:jar:build210:runtime
       org.apache.maven.scm:maven-scm-provider-local:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-perforce:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-starteam:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-svnexe:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-svn-commons:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-synergy:jar:1.0:runtime
       org.apache.maven.scm:maven-scm-provider-vss:jar:1.0:runtime]
      
      
      Exception in thread "main" java.lang.NoSuchMethodError: org.codehaus.plexus.util.cli.Commandline.addSystemEnvironment()V
      	at org.apache.maven.scm.provider.svn.svnexe.command.SvnCommandLineUtils.getBaseSvnCommandLine(SvnCommandLineUtils.java:82)
      	at org.apache.maven.scm.provider.svn.svnexe.command.changelog.SvnChangeLogCommand.createCommandLine(SvnChangeLogCommand.java:121)
      	at org.apache.maven.scm.provider.svn.svnexe.command.changelog.SvnChangeLogCommand.executeChangeLogCommand(SvnChangeLogCommand.java:77)
      	at org.apache.maven.scm.provider.svn.svnexe.command.changelog.SvnChangeLogCommand.executeChangeLogCommand(SvnChangeLogCommand.java:68)
      	at org.apache.maven.scm.command.changelog.AbstractChangeLogCommand.executeCommand(AbstractChangeLogCommand.java:101)
      	at org.apache.maven.scm.command.AbstractCommand.execute(AbstractCommand.java:58)
      	at org.apache.maven.scm.provider.svn.AbstractSvnScmProvider.executeCommand(AbstractSvnScmProvider.java:371)
      	at org.apache.maven.scm.provider.svn.AbstractSvnScmProvider.changelog(AbstractSvnScmProvider.java:274)
      	at org.apache.maven.scm.provider.AbstractScmProvider.changeLog(AbstractScmProvider.java:250)
      	at org.apache.maven.plugin.changelog.ChangeLogReport.generateChangeSetsFromSCM(ChangeLogReport.java:464)
      	at org.apache.maven.plugin.changelog.ChangeLogReport.getChangedSets(ChangeLogReport.java:393)
      	at org.apache.maven.plugin.changelog.ChangeLogReport.executeReport(ChangeLogReport.java:340)
      	at org.apache.maven.reporting.AbstractMavenReport.generate(AbstractMavenReport.java:98)
      	at org.apache.maven.reporting.AbstractMavenReport.execute(AbstractMavenReport.java:73)
      	at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:579)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:498)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmentForProject(DefaultLifecycleExecutor.java:265)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:191)
      	at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:149)
      	at org.apache.maven.DefaultMaven.execute_aroundBody0(DefaultMaven.java:223)
      	at org.apache.maven.DefaultMaven.execute_aroundBody1$advice(DefaultMaven.java:304)
      	at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:1)
      	at org.apache.maven.embedder.MavenEmbedder.execute_aroundBody2(MavenEmbedder.java:904)
      	at org.apache.maven.embedder.MavenEmbedder.execute_aroundBody3$advice(MavenEmbedder.java:304)
      	at org.apache.maven.embedder.MavenEmbedder.execute(MavenEmbedder.java:1)
      	at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:176)
      	at org.apache.maven.cli.MavenCli.main(MavenCli.java:63)
      	at org.apache.maven.cli.MavenCli.main(MavenCli.java:52)
      

        Issue Links

          Activity

          Hide
          Benjamin Bentmann added a comment -

          While the plugin POM surely needs to be fixed, this also reveals a subtle difference between Maven 2.x and 3.x. Maven 2.x enforces the inclusion of plexus-utils 1.1 (via DefaultPluginManager.checkPlexusUtils()) if a plugin does not already depend on plexus-utils 1.1+ as is here the case. Maven 3.x on the other hand does not seem to do this but provides the actually declared/resolved dependencies. As Commandline.addSystemEnvironment() was added in plexus-utils 1.0.5, this nicely demonstrates the difference in plugin class path...

          Show
          Benjamin Bentmann added a comment - While the plugin POM surely needs to be fixed, this also reveals a subtle difference between Maven 2.x and 3.x. Maven 2.x enforces the inclusion of plexus-utils 1.1 (via DefaultPluginManager.checkPlexusUtils() ) if a plugin does not already depend on plexus-utils 1.1+ as is here the case. Maven 3.x on the other hand does not seem to do this but provides the actually declared/resolved dependencies. As Commandline.addSystemEnvironment() was added in plexus-utils 1.0.5, this nicely demonstrates the difference in plugin class path...
          Hide
          Benjamin Bentmann added a comment -

          Fixed in r709902 by properly declaring dependeny on plexus-utils 1.5.6

          Show
          Benjamin Bentmann added a comment - Fixed in r709902 by properly declaring dependeny on plexus-utils 1.5.6
          Hide
          Vladimir Nicolici added a comment -

          When will version 2.2 be released? The current version, 2.1, was last released in July 2007...

          This issue is IMO a show stopper, I'm not able to use the changelog plugin because of this problem.

          Show
          Vladimir Nicolici added a comment - When will version 2.2 be released? The current version, 2.1, was last released in July 2007... This issue is IMO a show stopper, I'm not able to use the changelog plugin because of this problem.
          Hide
          Benjamin Bentmann added a comment - - edited

          Simply declare plexus-utils:1.5.6 as a plugin dependency in your POM and you have a workaround. (impossible for reporting plugins).

          Show
          Benjamin Bentmann added a comment - - edited Simply declare plexus-utils:1.5.6 as a plugin dependency in your POM and you have a workaround. (impossible for reporting plugins).

            People

            • Assignee:
              Benjamin Bentmann
              Reporter:
              Lammert Westerhoff
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: