exclure src / main / java de la compilation avec maven-compiler-plugin
Quelqu'un sait-il comment supprimer une racine source de maven-compiler-plugin?
[DEBUG] Source roots:
[DEBUG] C:\Workspace\Dev01\Internet_Login\src\main\java
[DEBUG] C:\Workspace\Dev01\Internet_Login\target\generated-sources\delombok
Parce que je génère la source avec lombok-maven-plugin à partir de C: \ Workspace \ Dev01 \ Internet_Login \ src \ main \ java mais le maven-compiler-plugin utilise à la fois les racines de la source et j'obtiens une erreur de compilation.
Après la compilation, j'utilise Aspectj donc je dois le faire de cette façon, car Lombok et Aspectj sont "incompatibles".
Quelqu'un a-t-il une solution.
ÉDITER :
J'ai une solution. Définissez simplement le répertoire source dans la construction et le compilateur utilisera ce répertoire.
<build>
<sourceDirectory>${project.build.directory}/generated-sources/delombok</sourceDirectory>
...
</build>
THX
Réponses
avez-vous essayé avec des exclusions?
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>src/main/java/</exclude>
</excludes>
</configuration>
</plugin>
Comme Chrylis l'a suggéré, vous devez placer toutes les classes avec des annotations Lombok src/main/lomboklorsque vous utilisez ce plugin. Ceci est clairement documenté sur sa page d'utilisation .
Il existe également un exemple de projet dans lequel vous pouvez voir comment les classes Java simples sans annotations Lombok sont placées src/main/javaet les cibles Lombok dans src/main/lombok.
Suivez simplement les instructions et vous devriez être bien en ce qui concerne le plugin Maven Compiler. Quant à AspectJ, cela dépend de la façon dont vous souhaitez tisser vos aspects (temps de compilation, tissage binaire, temps de chargement) et si les aspects résident dans le même ou un autre module.