我想包含文件,zipfileset
但也重命名它
例如
<zipfileset dir="${basedir}/test/target" prefix="webapps">
<include name="test*.war"/>
</zipfileset>
Run Code Online (Sandbox Code Playgroud)
但想从改名test.war
到sample.war
怎么实现这个?谢谢.
您可以使用mappedresources
资源集合执行所需的操作.这对我来说是一个基本测试(一个输入战争叫做test1.war
):
<mappedresources id="mapped.zfs">
<zipfileset dir="${basedir}/test/target">
<include name="test*.war"/>
</zipfileset>
<globmapper from="test*" to="webapps/sample*" />
</mappedresources>
<zip destfile="eg.zip">
<resources refid="mapped.zfs" />
</zip>
% unzip -l eg.zip
Archive: eg.zip
Length Date Time Name
--------- ---------- ----- ----
0 11-27-2012 00:19 webapps/
1423 11-27-2012 00:16 webapps/sample1.war
--------- -------
1423 2 files
Run Code Online (Sandbox Code Playgroud)
我认为这是不可能的,我会采用两步方法。
重命名并添加:
<move file="${basedir}/test/target/test.war" tofile="${basedir}/test/target/sample.war"/>
<zipfileset dir="${basedir}/test/target" prefix="webapps">
<include name="sample*.war"/>
</zipfileset>
Run Code Online (Sandbox Code Playgroud)
或复制并添加(如果您两者都需要):
<copy file="${basedir}/test/target/test.war" tofile="${basedir}/test/target/sample.war"/>
<zipfileset dir="${basedir}/test/target" prefix="webapps">
<include name="sample*.war"/>
</zipfileset>
Run Code Online (Sandbox Code Playgroud)