我阅读了官方文档mvn help:describe -DgroupId=org.apache.maven.plugins -DartifactId=maven-compiler-plugin -Ddetail
:
并且没有找到暗示自动删除不再存在的 .java
文件的 .class
文件的选项。
我也没有为 Ant 找到这样的选项:
清除项目然后在类重命名或将其移动到另一个包后再次构建是很烦人的......
如果我不执行此 IoC 框架,则会检测 beans 绑定(bind)的重复匹配项。
UPDTE 我不可能使用 maven-compiler-plugin 是否有任何插件可以单独检测 .class
文件并删除它们?
我希望在每次运行 mvn package
时都获得一致的构建,并保留构建的增量特性(因此避免mvn clean
)。
最佳答案
如果您遵循 Maven 约定并且您的代码位于 src/main/java
和 src/test/java
下,那么您将分别将其编译为 target/classes
和 target/test-classes
。话虽如此,maven-clean-plugin
会从您的target
目录中删除所有内容。
考虑以下几点:
mvn clean package
这将删除所有已编译的类并重建它们。
显然,当您进行涉及移动/重命名类的重构时,您将需要进行干净的编译以确保没有任何遗留问题。
编译器插件并不意味着处理编译以外的任何事情。 Maven 的插件严格分为独立的功能单元。
关于java - 当我删除/重命名相应的 .java 文件时,是否可以告诉 maven-compiler-plugin 删除 .class 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15636094/