Festlegen des generierten Quellverzeichnisses für Anmerkungsprozessoren in Maven
Ich versuche, einen Build, der Quellen mithilfe eines Annotation-Prozessors generiert, nach Maven zu verschieben. Ich habe versucht, das Maven-Compiler-Plugin wie folgt zu konfigurieren:
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<fork>true</fork>
<compilerArgument>-s ${project.build.directory}/target/generated-sources/annotation-processing</compilerArgument>
</configuration>
</plugin>
</plugins>
Aber Javac scheitert mit
[INFO] Compilation failure
Failure executing javac, but could not parse the error:
javac: invalid flag: -s /home/robert/workspaces/betbrain/sportsengine.common/sportsengine.bean.test/target/target/generated-sources/annotation-processing
Usage: javac <options> <source files>
use -help for a list of possible options
Soweit ich das beurteilen kann, sollte -s vor den Quelldateien an javac übergeben werden, aber maven übergibt es danach.
Wie kann ich das bestehen?-s
richtig zum maven-compiler-plugin kennzeichnen?
Aktualisieren: dasMaven-Annotation-Plugin scheint nicht zu funktionieren.
Wenn konfiguriert als
<plugin>
<groupId>org.bsc.maven</groupId>
<artifactId>maven-processor-plugin</artifactId>
<version>1.0-SNAPSHOT</version>
<executions>
<execution>
<id>process</id>
<goals>
<goal>process</goal>
</goals>
<phase>generate-sources</phase>
<configuration>
<outputDirectory>${generated.sources.directory}</outputDirectory>
<processors>
<processor>xxx.annotation.EnforceJavaBeansConventionsProcessor</processor>
</processors>
</configuration>
</execution>
</executions>
</plugin>
Ausführung schlägt mit fehl
[INFO] [processor:process {execution: process}]
error: Annotation processor 'xxx.annotation.EnforceJavaBeansConventionsProcessor' not found
1 error