2013-08-19 121 views
3

Ant 1.9的行为与Ant 1.8的行为不同,我需要在两个过渡期间都能够构建。我需要在1.9中设置zip64mode="never"属性,但在与1.8一起使用时,此报告为zip doesn't support the "zip64mode" attribute我可以让蚂蚁忽略它不理解的属性吗?

有没有办法让蚂蚁忽略它不理解的属性?我认为这是XML应该如何工作。

+0

请将问题稍微清晰一点 –

+0

现在可能更清楚了,或者没有。 – Matt

+0

你需要多少zip64?我会保持简单,并升级到蚂蚁1.9.1时,你可以放心地放弃1.8.x – thekbb

回答

2

的所有以下问题首先概述了各种方法来确定ANT的哪个版本正在运行:

你可以尝试以下,以获得您的构建,以支持多个版本ANT

<antversion property="ant.1.9.or.higher" atleast="1.9"/> 

<target name="task-with-zip64mode" if="ant.1.9.or.higher"> 
.. 
</target> 

<target name="task-without-zip64mode" unless="ant.1.9.or.higher"> 
.. 
</target> 
0

嗯,我找到了一种解决方法......它虽然是一个kludge。

我可以利用jar任务的默认行为,默认为zip64mode="never"

Zip task documentation: “从未意味着没有ZIP64额外的字段将永远不会写,这是蚂蚁1.8.x的的 行为,并开始使用Ant 1.9罐子,耳 和战争的早期和默认行为.1“。

它节省了必须有两个目标,并检查蚂蚁运行的版本,但它不是很好。