Ant -从zip文件中导入jar



我想在我的ant build.xml中包含一个jar文件(ant-contrib.jar)。我怎么能做到这一点,而不解压缩压缩文件。我已经尝试使用jarURLConnect.

<property url="jar:file:/D:/testing.zip!/testing/ant-contrib.jar" />

但是这给了我一个

. lang。

如果我将"ant-contrib.jar"替换为"test. jar",则不会出现错误。

属性"文件。

有谁能帮帮我吗

property标记用于包含属性,这些属性将位于属性文件中。jar文件不是属性文件。属性文档写得很清楚。

您需要解压缩文件以便将其添加到类路径中,然后实际将其添加到类路径中:请参阅类路径结构文档。但它不只是一个属性。

检查解压缩任务

尝试用"zip"代替"jar":

<property url="zip:file:/D:/testing.zip!/testing/ant-contrib.jar" />

不完全确定您在做什么,但是url总是有两个正斜杠作为分隔符。例如,在Subversion中,您可以执行file://D:/testing.zip!/testing/ant-contrib.jar

现在<property>任务中的URL规范应该指向javaspec属性文件,所以我认为jar将不起作用。

我可以告诉你的是,Java是这样编写的,它可以读取zip和jar中的文件,而不需要先解压缩它们。在Java中,如果将testing.zip解压缩到一个名为testing.zip的目录中,并从那里访问文件,或者将其保存为zip文件,应该没有什么区别。您应该能够将它包含在路径名中(没有感叹号):

<path id="classpath>
    <pathelement path="D:/testing.zip/testing/ant-contrib.jar"/>
    <yadda, yadda, yadda/>
</path>

应该可以。

您可以尝试将test .zip解压缩到同名目录中,看看是否可以访问ant-contrib.jar中的文件。然后,试着压缩test .zip,看看是否有什么不同。不应该有。

相关内容

  • 没有找到相关文章