Maven Compiler Plugin
  1. Maven Compiler Plugin
  2. MCOMPILER-135

Passing multiple parameters to Java 6 annotation processors with javac does not work

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 2.3.1
    • Fix Version/s: 2.4
    • Labels:
      None
    • Environment:
      JDK 1.6, Maven 2.2.1, Maven-Compiler-Plugin 2.3.1, Windows

      Description

      I have an annotation processor that supports multiple parameters and I have found that there is no way to set more than one of them at any given time from the Maven Compiler Plugin,

      Here's my setup.

       
      <plugin>
          <inherited>true</inherited>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>2.3.1</version>
          <configuration>
              <source>1.6</source>
              <target>1.6</target>
              <compilerArgument>-AaddResDir=src/main/webapp -Averbose=true</compilerArgument>
          </configuration>
      </plugin>
      

      Javac needs the parameters added as separate Strings

      [ ... , "-AaddResDir=src/main/webapp", "-Averbose=true"]

      but the Compiler Plugin generates this code:

      [ ... , "-AaddResDir=src/main/webapp -Averbose=true"]

      which Javac will parse as

      key:"addResDir" value="src/main/webapp -Averbose=true"

      The map version "<compilerArguments>" is of no help either, because this

      <Averbose>true</Averbose>
      <AaddResDir>src/main/webapp</AResDir>

      will generate the output

      [... , "-Averbose", "true", "-AaddResDir", "src/main/webapp"]

      while this

      <Averbose=true />
      <AaddResDir=src/main/webapp />

      is not well-formed XML.

      Stepping through the compiler argument generation with the debugger I have not found a way to post-process the arguments, so please add a way to support multiple APT parameters because this is a major show-stopper.

      1. AbstractCompilerMojo.java.2.patch
        2 kB
        Sean Patrick Floyd
      2. AbstractCompilerMojo.java.3.patch
        3 kB
        Sean Patrick Floyd
      3. AbstractCompilerMojo.java.patch
        1 kB
        Sean Patrick Floyd

        Issue Links

          Activity

          No work has yet been logged on this issue.

            People

            • Assignee:
              Robert Scholte
              Reporter:
              Sean Patrick Floyd
            • Votes:
              4 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development