将递归扫描源目录和目标目录以查找要编译的 Java 源文件。只有没有对应 .class 文件或类文件比 .java 文件旧的 Java 文件才会被编译。
以上来自javac Task, ANT Apache。但我真的不明白为什么在我的情况下 .java 会一次又一次地重新编译。
我的工作目录是 .../trunk
我的源(.java)位于trunk/src
我的目标(.class)位于trunk/bin
我的 .java 文件使用默认包,即没有包声明。
javac 任务在我的 build.xml 中就是这样使用的
<javac srcdir="${src}"
destdir="${bin}"
includeantruntime="false">
<classpath>
<pathelement location="${bin}"/>
<pathelement path="${java.class.path}"/>
</classpath>
</javac>
我定义的地方
<property name="src" value="src"/>
<property name="bin" value="bin/"/>
似乎一切正常,但每次我运行 ANT 时,它都会重新编译 .java 文件。真的很奇怪!有人想告诉我为什么吗?谢谢。