maven-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sean Patrick Floyd (JIRA)" <j...@codehaus.org>
Subject [jira] Updated: (MCOMPILER-135) Passing multiple parameters to Java 6 annotation processors with javac does not work
Date Tue, 14 Sep 2010 07:21:32 GMT

     [ http://jira.codehaus.org/browse/MCOMPILER-135?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Sean Patrick Floyd updated MCOMPILER-135:
-----------------------------------------

    Attachment: AbstractCompilerMojo.java.2.patch

Here is a second patch that introduces a new map-based parameter

{code}<annotationProcessorArguments>
    <key1>value</key1>
    <key2>value2</key2>
</annotationProcessorArguments>{code}.

This would probably be better as it couldn't break existing functionality

> Passing multiple parameters to Java 6 annotation processors with javac does not work
> ------------------------------------------------------------------------------------
>
>                 Key: MCOMPILER-135
>                 URL: http://jira.codehaus.org/browse/MCOMPILER-135
>             Project: Maven 2.x Compiler Plugin
>          Issue Type: Bug
>    Affects Versions: 2.3.1
>         Environment: JDK 1.6, Maven 2.2.1, Maven-Compiler-Plugin 2.3.1, Windows
>            Reporter: Sean Patrick Floyd
>         Attachments: AbstractCompilerMojo.java.2.patch, AbstractCompilerMojo.java.patch
>
>
> 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.
> {code:xml} 
> <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>
> {code} 
> Javac needs the parameters added as separate Strings
> {code}[ ... , "-AaddResDir=src/main/webapp", "-Averbose=true"]{code}
> but the Compiler Plugin generates this code:
> {code}[ ... , "-AaddResDir=src/main/webapp -Averbose=true"]{code}
> which Javac will parse as
> {code}key:"addResDir" value="src/main/webapp -Averbose=true"{code}
> The map version "<compilerArguments>" is of no help either, because this
> {code}<Averbose>true</Averbose>
> <AaddResDir>src/main/webapp</AResDir>{code}
> will generate the output
> {code}[... , "-Averbose", "true", "-AaddResDir", "src/main/webapp"]{code}
> while this
> {code}<Averbose=true />
> <AaddResDir=src/main/webapp />{code}
> 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.

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Mime
View raw message