1
我想修改我的ant腳本,以便它將生成沒有錯誤是否存在本地lib文件夾。我想在多次戰爭中使用相同的腳本,其中一些將具有WEB-INF/lib,其中一些不會。如果該文件夾存在,請將其包含在類路徑中,如果沒有,請不要包含它。我嘗試過,但我無法弄清楚它應該去哪裏。我認爲這應該比我做出來要簡單得多,但是我的Googl Fu讓我失望了。如何使ant不會失敗,如果沒有找到類路徑上的文件夾
<property name="local.libs" value="WebContent/WEB-INF/lib" />
<path id="local.libs.path">
<fileset dir="${local.libs}" includes="*.jar" />
</path>
<target name="compile">
<mkdir dir="${build.classes.dir}"/>
<javac srcdir="${src.java.dir}" destdir="${build.classes.dir}" debug="true" includeantruntime="false">
<compilerarg value="-Xlint:-path" />
<classpath refid="local.libs.path" />
<classpath refid="server.libs.path" /> <!-- not referenced in snippet -->
</javac>
</target>
這裏的關鍵是傳入的文件夾*存在。包含模式對缺少文件夾(在這種情況下爲lib)更爲寬鬆。 不幸的是,這種方法不適用於子元素,因爲它必須具有確切的源文件夾。 –
mgaert
2013-12-13 11:28:13