Just for the record, if someone else needs to use maven 2 and APT, the
tobago apt-maven-plugin works fine. The only problem I have met so far,
is to pass in ann env options to the processor. Seems like there is a
bug here in the plugin. Example of usage:

<plugin>
  <groupId>org.apache.myfaces.tobago</groupId>
  <artifactId>maven-apt-plugin</artifactId>
  <executions>
    <execution>
      <phase>generate-sources</phase>
      <configuration>
        <generated>.apt_generated</generated>
        <aptOptions>x=3</aptOptions>
        <target>1.5</target>
        <nocompile>true</nocompile>
        <showWarnings>true</showWarnings>
      </configuration>
      <goals>
        <goal>execute</goal>
      </goals>
    </execution>
  </executions>
</plugin>


Rohnny

Rohnny Moland wrote:
> Chris Hilton wrote:
>> There is a source jar for an apt plugin at:
>>
>> http://www.mvnrepository.com/artifact/org.apache.myfaces.tobago/maven-ap
>> t-plugin/1.0.7
> 
> Thanks, I'll try that. Couldnt find how to add classpath and such things
> then, but I may ask more on the myfaces mailinglist.
> 
>> No idea if that works, but might be worth investigating. As far as the
>> antrun option goes, you'll need to specify the ant-apt.jar as a
>> dependency within the antrun execution, something like:
>>
>>       <plugin>      
>>         <groupId>org.apache.maven.plugins</groupId>
>>         <artifactId>maven-antrun-plugin</artifactId>
>>           <execution>
>>             <phase>process-classes</phase>
>>             <configuration>
>>               <tasks>
>>                 <apt ...></apt>
>>               </tasks>
>>             </configuration>
>>             <goals>
>>               <goal>run</goal>
>>             </goals>
>>           </execution>
>>         </executions>
>>         <dependencies>
>>           <dependency>
>>             <groupId>ant</groupId>
>>             <artifactId>ant-apt</artifactId>
>>             <version>SOME_VERSION</version>
>>           </dependency>
>>         </dependencies>
>>       </plugin>
>>
>> Unfortunately, it doesn't appear that the ant-apt jar has been loaded
>> into the main repository, so you can either (1) go through the process
>> to add it to the main repository, (2) do an install:install-file to
>> install it in your local repository, (3) do a deploy:deploy-file to
>> deploy it your company repository (you do have one, right?), or (4) make
>> your dependency a system dependency and specify a local path. (1) would
>> be nice so everyone else can use it but might take a while, so you'll
>> probably need to do (2) or (3) short-term. (4) should generally be
>> avoided, but is mentioned for completeness.
> 
> 
> Tried this one (3) but ran into class loader problems. More exact:
> 
> Caused by: Error starting apt compiler
>         at
> org.apache.tools.ant.taskdefs.compilers.AptCompilerAdapter.execute(Unknown
> Source)
>         at org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:931)
>         at org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:757)
>         at org.apache.tools.ant.taskdefs.Apt.execute(Unknown Source)
>         at
> org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:275)
>         at org.apache.tools.ant.Task.perform(Task.java:364)
>         at org.apache.tools.ant.Target.execute(Target.java:341)
>         at
> org.apache.maven.plugin.antrun.AbstractAntMojo.executeTasks(AbstractAntMojo.java:108)
>         ... 19 more
> Caused by: java.lang.NoSuchMethodException:
> com.sun.tools.apt.Main.compile([Ljava.lang.String;)
>         at java.lang.Class.getMethod(Class.java:1581)
> 
> Any good ideas here are welcome.
> 
> 
> Rohnny
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to