解压缩任务期间的 ANT 连接文件



这里的ANT初学者。我有一个名为 Neo 的软件包,在它的构建中.xml我遇到了问题。在将 Neo jar 解压缩到这个展开的目录中时,

<unzip src="${output.dir}/Scala2.11/Neo.jar" dest="${standalone.jar.expanded.jars.dir}"/>

扩展目录中有一个名为"目标文件"的文件 在上面提到的解压缩步骤中被 Neo 中存在的另一个名为"targetFile"的文件覆盖.jar路径下

src/services/targetFile

我需要确保 Neo.jar 中的这个"目标文件"不会覆盖扩展目录中已经存在的"目标文件",而是将自身连接到已经存在的"目标文件"。这是我到目前为止的方法:

<unzip src="${output.dir}/Scala2.11/Neo.jar" dest="${standalone.jar.expanded.jars.dir}">
<patternset>
<include name="src/services/targetFile"/>
</patternset>
</unzip>

一旦我匹配了模式集中的文件,当我事先不知道"targetFile"存在于扩展目录中的路径时,我将如何使用 ANT 的 Concat 任务?实际上,再次查看此内容使我认为由于模式集,现在只有"targetFile"将被解压缩,但本质上我需要解压缩所有内容,并为我正在解压缩的其中一个文件做一些特别的事情。

解压缩每个.jar文件时,您需要排除 src/services/targetFile 条目,然后从每个存档中分别连接该条目:

<unzip src="${output.dir}/Scala2.11/Neo.jar" dest="${standalone.jar.expanded.jars.dir}">
<patternset excludes="src/services/targetFile"/>
</unzip>
<unzip src="path/to/lib01.jar" dest="${standalone.jar.expanded.jars.dir}">
<patternset excludes="src/services/targetFile"/>
</unzip>
<unzip src="path/to/lib02.jar" dest="${standalone.jar.expanded.jars.dir}">
<patternset excludes="src/services/targetFile"/>
</unzip>
<unzip src="path/to/lib03.jar" dest="${standalone.jar.expanded.jars.dir}">
<patternset excludes="src/services/targetFile"/>
</unzip>
<unzip src="path/to/lib04.jar" dest="${standalone.jar.expanded.jars.dir}">
<patternset excludes="src/services/targetFile"/>
</unzip>
<concat destfile="${standalone.jar.expanded.jars.dir}/src/services/targetFile">
<zipentry zipfile="${output.dir}/Scala2.11/Neo.jar" name="src/services/targetFile"/>
<zipentry zipfile="path/to/lib01.jar" name="src/services/targetFile"/>
<zipentry zipfile="path/to/lib02.jar" name="src/services/targetFile"/>
<zipentry zipfile="path/to/lib03.jar" name="src/services/targetFile"/>
<zipentry zipfile="path/to/lib04.jar" name="src/services/targetFile"/>
</concat>

相关内容

  • 没有找到相关文章

最新更新