Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用ant任务从现有ear中排除JAR_Ant_Ear - Fatal编程技术网

使用ant任务从现有ear中排除JAR

使用ant任务从现有ear中排除JAR,ant,ear,Ant,Ear,我需要使用ant任务更新现有的ear文件,不包括一些jar文件,这些文件将在WAS共享库中提供。我不想再次创建ear,只需要更新已经构建的ear,正如我看到的更新ear的帖子,但这些帖子正在创建一个新的ear。我的问题是,我不想重建耳朵 是一种通过maven实现的方法,但我想通过ear任务ant实现 谢谢。Ant-ear、war和jar任务可能能够更新ear、war和jar,但我不依赖它。制作耳朵是一项非常快速的任务——只需几秒钟,所以我从来没有探讨过这个问题 如果由于所需文件不再可用而无法重新

我需要使用ant任务更新现有的ear文件,不包括一些jar文件,这些文件将在WAS共享库中提供。我不想再次创建ear,只需要更新已经构建的ear,正如我看到的更新ear的帖子,但这些帖子正在创建一个新的ear。我的问题是,我不想重建耳朵

是一种通过maven实现的方法,但我想通过ear任务ant实现


谢谢。

Ant-ear、war和jar任务可能能够更新ear、war和jar,但我不依赖它。制作耳朵是一项非常快速的任务——只需几秒钟,所以我从来没有探讨过这个问题

如果由于所需文件不再可用而无法重新创建ear,则可以尝试解压缩ear,设置所需内容,然后从头开始重建

<unzip src="${ear.file}"
    destdir="${temp.location}"/>
<delete file="${ear.file}"/>

<here be dragons.../>

<zip destfile="${ear.file}"
    basedir="${temp.location}"/>

您可以使用
s或
s来控制压缩和解压的内容,但解压和重建可能更容易


如果这让您感觉更好,您可以使用
而不是
,但必须指定
appxml
参数。使用Ant-ear、war和jar任务可能更容易,但我并不依赖它。制作耳朵是一项非常快速的任务——只需几秒钟,所以我从来没有探讨过这个问题

如果由于所需文件不再可用而无法重新创建ear,则可以尝试解压缩ear,设置所需内容,然后从头开始重建

<unzip src="${ear.file}"
    destdir="${temp.location}"/>
<delete file="${ear.file}"/>

<here be dragons.../>

<zip destfile="${ear.file}"
    basedir="${temp.location}"/>

您可以使用
s或
s来控制压缩和解压的内容,但解压和重建可能更容易


如果这让您感觉更好,您可以使用
而不是
,但必须指定
appxml
参数。使用起来更简单,重新创建ear文件有什么问题?你认为不重写文件就可以删除文件的某些部分吗?ear文件是自动生成的,所以我不想改变它的格式。我只是想更新ear的内容,就像但是通过ant script.7zip一样。它让您认为它可以直接更新归档中的文件,但实际上它不会。它重新创建了整个档案。只需创建一个ant任务,将EAR中的所有内容提取到一个空的临时文件夹中,然后更新或删除要更新/删除的文件,然后从临时目录内容中重新创建EAR文件(这只是一个扩展名为.EAR的zip文件)。谢谢@JBNizet,我同意你的观点。重新创建ear文件有什么问题?你认为不重写文件就可以删除文件的某些部分吗?ear文件是自动生成的,所以我不想改变它的格式。我只是想更新ear的内容,就像但是通过ant script.7zip一样。它让您认为它可以直接更新归档中的文件,但实际上它不会。它重新创建了整个档案。只需创建一个ant任务,将EAR中的所有内容提取到一个空的临时文件夹中,然后更新或删除您要更新/删除的文件,然后从临时目录内容中重新创建EAR文件(这只是一个扩展名为.EAR的zip文件)。谢谢@JBNizet,我同意您的观点。