我正在处理的众多模块之一使用“生成源”来表示其余代码所依赖的几个自动生成的 Java 类。不幸的是,每次我执行 git pull 它都会被重置,我必须再次将该文件夹标记为“Generated Sources Root”。
这不是一个交易破坏者,但它真的很烦人。没有办法使它自动化吗?我不知道,IntelliJ 中的一些设置或者甚至直接在 pom.xml 中?
最佳答案
你可以试试build-helper-maven-plugin并明确地向您的项目添加更多源目录:
<project>
...
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.1.0</version>
<executions>
<execution>
<id>add-source</id>
<phase>generate-sources</phase>
<goals>
<goal>add-source</goal>
</goals>
<configuration>
<sources>
<source>${project.build.directory}/generated-sources/...</source>
</sources>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
还有一个小技巧 - 实际的源代码生成必须在这个目标执行之前发生。
在我们的项目中,IDEA 使用这种方法效果很好。
关于java - 在 IntelliJ 中每次 git pull 后生成的源根消失了,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61797420/