带通配符的Ant - Pathelement仅适用于Javac分叉模式

时间:2014-08-27 16:28:08

标签: java ant

使用Ant时遇到了以下问题。

我的ANT脚本片段:

<path id="id.compile.classpath">
  <pathelement location="src/compile_lib1/*" />
  <pathelement location="src/compile_lib2/*" />
</path>

<javac srcdir="${module.root}/${src.root}" destdir="${swap.target.classes}"
  nowarn="${javac.nowarn}" debug="${javac.debug}" fork="${javac.fork}"
  classpathref="id.compile.classpath" includeAntRuntime="${javac.includeAntRuntime}">
  <include name="**/*.java"/>
</javac>

在javac任务中设置fork =“true”时,通配符pathelement工作正常,但是当forked设置为false时,Ant似乎无法正确解释通配符。 (由于类路径错误,编译失败)。

任何建议
感谢。

1 个答案:

答案 0 :(得分:7)

使用pathelement而不是使用通配符fileset,让Ant为您扩展通配符。

<path id="id.compile.classpath">
  <fileset dir="src/compile_lib1" includes="*.jar" />
  <fileset dir="src/compile_lib2" includes="*.jar" />
</path>