我在教程中浏览ant build.xml文件。我很困惑b / w javac标签的copy标签和destdir属性。
<target name="compile">
<mkdir dir="${classes.dir}"/>
<javac srcdir="${src.dir}" destdir="${classes.dir}" classpathref="classpath"/>
<copy todir="${classes.dir}">
<fileset dir="${src.dir}" excludes="**/*.java"/>
</copy>
</target>
根据我的理解,javac destdir属性将生成的类文件放在提到的目录中。根据上面的代码副本也做同样的事情,然后同时使用两者的目的是什么。
谢谢,
答案 0 :(得分:1)
copy
中的文件集:
<fileset dir="${src.dir}" excludes="**/*.java"/>
指定副本应该复制不是java文件的所有内容。这可能是图像和属性文件之类的东西。
因此javac
任务正在编译Java源代码并将类文件放在目标目录中,而副本正在添加其他资源。