ant - 在 javac Ant 任务中禁用增量编译

标签 ant javac annotation-processing

我需要轻松测试我的注释处理器,所以我准备了 Ant 脚本来启动 javac设置了所有必要的选项。不幸的是,如 another thread 中所述:

By default the task compares the timestamps of .java and corresponding .class files, and only tells the Java compiler to recompile source files that are newer than their corresponding object files, or that don't have an object file at all.



大多数时候这对我来说很好,但当我需要测试我每次都需要启动 javac 的注释处理器时,不管相应的 .class 文件是否已经存在。

有没有办法禁用这种 Ant 默认行为?我查看了 javac 的所有选项任务,但一无所获。除了清理输出目录之外还有其他解决方案吗?

最佳答案

如果您删除 .class 文件,根据您的报价,编译器将被迫重新编译 .java 文件

关于ant - 在 javac Ant 任务中禁用增量编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11420510/

相关文章:

java - 如何在 -cp 参数中为许多 *.jar 文件正确提供 arg 以在 Unix 上进行编译?

ant - Netbeans 9.0 孵化 - 不会在 `lib` 中为迁移/更新的 Java 10 项目创建 `dist` 目录

ant - Junit/Ant 重新运行失败的测试

javac Jenkins Ant : build errors relating to dependent import. jars

java - 使用 makefile 使用 javac 编译时为 "error: cannot find symbol"

java - 无法扩展 AbstractProcessor 以创建 java 注释处理器

java - 从 Java Annotation Processor 访问源代码

debugging - 如何调试 apt AbstractProcessor 代码生成?

java - "Override"导入的 Ant 文件的属性

xml - Ant 用特殊字符替换文本