Uploaded image for project: 'Maven Compiler Plugin'
  1. Maven Compiler Plugin
  2. MCOMPILER-272

When annotationProcessorPaths has multiple entries, only the transitive dependencies of the first entry are added

Attach filesAttach ScreenshotVotersWatch issueWatchersCreate sub-taskLinkCloneUpdate Comment AuthorReplace String in CommentUpdate Comment VisibilityDelete Comments
    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 3.5.1, 3.6.0, 3.6.1, 3.6.2, 3.7.0, 3.8.0
    • 3.9.0
    • None

    Description

      I have multiple path elements in annotationProcessorPaths. The expected result is, that all of them together with their transitive dependencies are passed to javac as processorpath parameter.
      However, when running maven in debug mode, I can see, that only for the first path element, the transitive dependencies are passed to javac. For the other path elements they are missing.

      I have no easy example to reproduce yet, but I did some debugging:

      In http://svn.apache.org/viewvc/maven/plugins/tags/maven-compiler-plugin-3.5.1/src/main/java/org/apache/maven/plugin/compiler/AbstractCompilerMojo.java?view=markup#l1378 , the first artifact is set as the root artifact for the ArtifactResolutionRequest. The other artifacts are just added as "artifactDependencies".
      After some more debugging into DefaultArtifactResolver, it seem to me, that only for the root artifact, the transitive dependencies are resolved. The other artifacts are just added without their dependencies. See also here: http://grepcode.com/file/repo1.maven.org/maven2/org.apache.maven/maven-compat/3.3.3/org/apache/maven/artifact/resolver/DefaultArtifactResolver.java#442

      Attachments

        Activity

          This comment will be Viewable by All Users Viewable by All Users
          Cancel

          People

            rfscholte Robert Scholte
            stefanoc Stefan Ocke
            Votes:
            4 Vote for this issue
            Watchers:
            10 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Slack

                Issue deployment