java - 当我删除/重命名相应的 .java 文件时,是否可以告诉 maven-compiler-plugin 删除 .class 文件?

标签 java spring maven ant inversion-of-control

我阅读了官方文档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/javasrc/test/java 下,那么您将分别将其编译为 target/classestarget/test-classes。话虽如此,maven-clean-plugin 会从您的target 目录中删除所有内容。

考虑以下几点:

mvn clean package

这将删除所有已编译的类并重建它们。

显然,当您进行涉及移动/重命名类的重构时,您将需要进行干净的编译以确保没有任何遗留问题。

编译器插件并不意味着处理编译以外的任何事情。 Maven 的插件严格分为独立的功能单元。

关于java - 当我删除/重命名相应的 .java 文件时,是否可以告诉 maven-compiler-plugin 删除 .class 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15636094/

相关文章:

java - 覆盖 spring-boot EurekaInstanceConfigBean

java - (Maven项目)无法找到或加载主类 "class"

Java 看不到文件系统上包含非法字符的文件

java - 如何以编程方式从 InfluxDb 中删除测量值?

java - org.apache.coyote.http11.Http11Processor.service 解析 HTTP 请求 header 时出错

spring - 如何在Aop中打印Grails Controller 参数对象值

java - 如何在 Intellij IDEA 13.1 中使用 Maven 结构创建 Spring MVC 应用程序?

maven - 开始 Spring 3 和错误执行应用程序

java - 如何使用Java将图像和文本复制到剪贴板?

java - ArrayList replaceAll() 不工作