Ant的手册中说Ant会比较.class文件和.java文件的时间,只有.java文件更新时间在.class文件之后才会重新编译,但我的Ant的工程每次编译,不管.java文件是否更新过,全部重新编译一遍。

解决方案 »

  1.   

    检查你的.java的日期/时间(你改过系统日期吗?),如果它大于当前日期/时间,就会一直重新编译
      

  2.   

    .java文件时间没有大于系统时间。
    我的每个project都这样。我用的ant是1.6.5版,不会是这个版本有什么bug吧?
      

  3.   

    你是不是先执行了clean class目录的target?
      

  4.   

    我的build.xml文件部分内容:<target name="prepare">
    <mkdir dir="${build.dir}"/>
    <mkdir dir="${classes.dir}"/>
    </target> <target name="compile" depends="prepare">
    <javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath" debug="on"/>
    </target>