Java ant不断地重新编译
我希望ant能够找出何时不重新编译最新的文件——不幸的是,这种情况一直在发生。我的生成目标仅包含:Java ant不断地重新编译,java,ant,build,Java,Ant,Build,我希望ant能够找出何时不重新编译最新的文件——不幸的是,这种情况一直在发生。我的生成目标仅包含: <javac srcdir="configuration" destdir="${build_env}"> <compilerarg value="-Xlint"/> </javac> 但是它们确实存在,并且可以在“/blah/build/com/blah/configuration/…”目录中找到 如何修复此问题?我在过去看到过这样的情况:类定义在与.j
<javac srcdir="configuration" destdir="${build_env}">
<compilerarg value="-Xlint"/>
</javac>
但是它们确实存在,并且可以在“/blah/build/com/blah/configuration/…”目录中找到
如何修复此问题?我在过去看到过这样的情况:类定义在与.java文件中声明的包不同的位置 例如,如果我们在com/stackoverflow/ant/error中查看一个名为AJavaFile.java的文件。最好将包定义为:
package com.stackoverflow.ant.error;
或者,javac编译器会将它放在与包声明预期不同的位置。也有同样的混淆问题 您应该尝试运行ant的文件位置的基本路径,而不仅仅是其中的相对目录 当包与您的“构建”中的包不完全匹配时,javac似乎会从您指定包的方式开始,试图正确地确定包。因此,它只是汇编了这些情况下的所有内容。如果你仔细想想,这是有道理的,尽管它有一些缺点。已构建内容中的路径需要与要编译的内容完全匹配。当它没有被告知从写入“build”目录的同一个基本目录开始时,它就无法向前看并解析完整路径 如果您的代码位于/blah/build/com/blah/configuration/。。。然后试试看
<javac srcdir="/blah/" destdir="${build_env}">
...
</javac>
...
或
...
请参见“谢谢”。是的,这个链接也解决了我的问题。
<javac srcdir="/blah/" destdir="${build_env}">
...
</javac>
<javac destdir="${build_env}">
<src path="blah/"/>
...
</javac>