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

NPE in AbstractArtifactResolutionException if DefaultArtifactResolver.resolveTransitively is interrupted

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 2.1.0
    • 2.2.1
    • General
    • None
    • all platforms

    Description

      If an InterruptedException occurs in DefaultArtifactResolver.resolveTransitively, it is caught and an ArtifactResolutionException is thrown where the Artifact parameter is null (line 350):
      throw new ArtifactResolutionException( "Resolution interrupted", null, e );

      Unfortunately, AbstractArtifactResolutionException tries to access properties from that null-Artifact...

      The error output is therefore hiding the actual problem:
      java.lang.NullPointerException
      at org.apache.maven.artifact.resolver.AbstractArtifactResolutionException.<init>(AbstractArtifactResolutionException.java:92)
      at org.apache.maven.artifact.resolver.ArtifactResolutionException.<init>(ArtifactResolutionException.java:57)
      at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolveTransitively(DefaultArtifactResolver.java:350)
      at org.apache.maven.artifact.resolver.DefaultArtifactResolver.resolveTransitively(DefaultArtifactResolver.java:304)
      at org.apache.maven.plugin.DefaultPluginManager.resolveTransitiveDependencies(DefaultPluginManager.java:1492)
      at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPluginManager.java:435)
      at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(DefaultLifecycleExecutor.java:678)
      at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLifecycle(DefaultLifecycleExecutor.java:540)
      at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(DefaultLifecycleExecutor.java:519)
      at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHandleFailures(DefaultLifecycleExecutor.java:371)
      at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegments(DefaultLifecycleExecutor.java:332)
      at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLifecycleExecutor.java:181)
      at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:356)
      at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:137)
      at org.apache.maven.cli.MavenCli.main(MavenCli.java:356)
      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)

      Attachments

        Activity

          People

            bentmann Benjamin Bentmann
            swismer Stefan Wismer
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: