excluir src / main / java da compilação com maven-compiler-plugin
Alguém sabe como remover as raízes do código-fonte do 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
Porque eu gero o código-fonte com lombok-maven-plugin de C: \ Workspace \ Dev01 \ Internet_Login \ src \ main \ java, mas o maven-compiler-plugin usa raízes de código-fonte e recebo um erro de compilação.
Depois de compilar, eu uso o Aspectj, então preciso fazer dessa forma, porque o Lombok e o Aspectj são "incompatíveis".
Alguém tem uma solução.
EDITAR:
Eu tenho uma solução. Basta definir o sourceDirectory no build e o compilador usará esse diretório.
<build>
<sourceDirectory>${project.build.directory}/generated-sources/delombok</sourceDirectory>
...
</build>
THX
Respostas
você tentou com exclusões?
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<excludes>
<exclude>src/main/java/</exclude>
</excludes>
</configuration>
</plugin>
Como Chrylis sugeriu, você deve colocar quaisquer classes com anotações do Lombok src/main/lombokao usar esse plug-in. Isso está claramente documentado em sua página de uso .
Há também um projeto de amostra em que é possível ver como as classes Java simples, sem anotações do Lombok, são colocadas src/main/javae os destinos do Lombok são src/main/lombok.
Basta seguir as instruções e você deve estar bem em relação ao plugin do compilador Maven. Quanto a AspectJ, depende de como você deseja tecer seus aspectos (tempo de compilação, tecelagem binária, tempo de carregamento) e se os aspectos residem no mesmo ou em outro módulo.