Uploaded image for project: 'Maven'
  1. Maven
  2. MNG-3372

dependency:tree throws exception

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Cannot Reproduce
    • 2.0.8
    • None
    • None

    Description

      Running
      mvn -Papache org.apache.maven.plugins:maven-dependency-plugin:2.0-alpha-5-SNAPSHOT:tree
      on a pom containing the following entry throws an exception, unless an exclusion is applied as shown below.

      <dependency>
      <groupId>jasperreports</groupId>
      <artifactId>jasperreports</artifactId>
      <version>2.0.0</version>
      <scope>compile</scope>
      <exclusions>
      <!-- This exclusion needed to avoid crash in dependency:tree version 2.0-alpha-5-SNAPSHOT -->
      <exclusion>
      <groupId>commons-digester</groupId>
      <artifactId>commons-digester</artifactId>
      </exclusion>
      <exclusion>
      <groupId>xml-apis</groupId>
      <artifactId>xml-apis</artifactId>
      </exclusion>
      <exclusion>
      <groupId>eclipse</groupId>
      <artifactId>jdtcore</artifactId>
      </exclusion>
      </exclusions>
      </dependency>
      <dependency>
      <groupId>commons-digester</groupId>
      <artifactId>commons-digester</artifactId>
      <version>1.8</version>
      <scope>compile</scope>
      </dependency>

      Exception:

      [ERROR] FATAL ERROR
      [INFO] ------------------------------------------------------------------------
      [INFO] version was null for commons-digester:commons-digester
      [INFO] ------------------------------------------------------------------------
      [INFO] Trace
      java.lang.NullPointerException: version was null for commons-digester:commons-digester
      at org.apache.maven.artifact.DefaultArtifact.getBaseVersion(DefaultArtifact.java:362)
      at org.apache.maven.artifact.DefaultArtifact.getId(DefaultArtifact.java:225)
      at org.apache.maven.shared.dependency.tree.DependencyTreeResolutionListener.flushDependencyManagement(DependencyTreeResolutionListener.java:524)
      at org.apache.maven.shared.dependency.tree.DependencyTreeResolutionListener.omitForNearer(DependencyTreeResolutionListener.java:209)
      at org.apache.maven.artifact.resolver.DefaultArtifactCollector.fireEvent(DefaultArtifactCollector.java:487)
      at org.apache.maven.artifact.resolver.DefaultArtifactCollector.fireEvent(DefaultArtifactCollector.java:462)
      at org.apache.maven.artifact.resolver.DefaultArtifactCollector.recurse(DefaultArtifactCollector.java:234)
      at org.apache.maven.artifact.resolver.DefaultArtifactCollector.recurse(DefaultArtifactCollector.java:370)
      at org.apache.maven.artifact.resolver.DefaultArtifactCollector.recurse(DefaultArtifactCollector.java:370)
      at org.apache.maven.artifact.resolver.DefaultArtifactCollector.collect(DefaultArtifactCollector.java:76)
      at org.apache.maven.shared.dependency.tree.DefaultDependencyTreeBuilder.buildDependencyTree(DefaultDependencyTreeBuilder.java:102)
      at org.apache.maven.plugin.dependency.TreeMojo.execute(TreeMojo.java:218)

      My uneducated guess is that for that particular version of the dependency, neither the dependency's pom nor any parent pom defines a version for commons-digester.

      PS: dependency:tree rocks!

      Attachments

        1. pom.xml
          26 kB
          Simon Kitching

        Issue Links

          Activity

            People

              brianf Brian E Fox
              skitching Simon Kitching
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: