我的Ant構建腳本與使用叉子一個java任務開始=真不一致的NoClassDefFoundError在subant java的任務
<java fork="true"
classname="org.apache.tools.ant.launch.Launcher"
jvm="${java.home}/bin/java"
classpathref="class.path">
<arg value="-f" />
<arg value="${ant.file}" />
<arg value="generate" />
</java>
的<arg value="generate" />
指向同一個Ant構建文件中的另一個任務。 此任務使用指向其他文件的子任務啓動另一個目標。
<subant verbose="true" target="replace">
<fileset dir="${basedir}" includes="refactor.xml" />
</subant>
此文件refactor.xml以fork = true再次啓動java任務。
<java classpathref="class.path"
classname="namespace.Tool"
fork="true"/>
奇怪的行爲是:一切正常,但在一段時間後,我得到了NoClassDefFoundError
錯誤的namespace.Tool
Java源文件。 例如,關閉,重新打開文件錯誤可能消失,但沒有可重複的行爲。
我試圖避免subant構造(用於整理),但這並沒有幫助。
最後,引用的class.path是這樣的:
<path id="class.path">
<pathelement location="../common/bin" />
<pathelement location="./bin" />
<fileset dir="${build.dir}">
<include name="...jar" />
</fileset>
</path>
任何想法?