1

ローカルの lib フォルダーが存在するかどうかに関係なく、エラーなしでビルドされるように、ant スクリプトを変更しようとしています。複数の war で同じスクリプトを使用したいのですが、その中には WEB-INF/lib があるものもあれば、ないものもあります。フォルダーが存在する場合はクラスパスに含め、存在しない場合は含めません。置いてみましたが、どこに置くべきかわかりません。これは私が思っているよりもはるかに簡単なはずですが、私のGoogl Fuは私を失敗させています。

<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>
4

1 に答える 1

1

local.libs の値を WebContent/WEB-INF だけにすることで、これを解決しました。

<property name="local.libs" value="WebContent/WEB-INF" />

そしてファイルセット

<fileset dir="${local.libs}" includes="*lib/*.jar" />

次に、lib フォルダーが存在するかどうかに関係なくビルドします。

于 2013-03-04T12:51:11.230 に答える