在ant中有没有办法从zip文件中加载属性?
我有一个项目ant文件,需要使用zip文件中的文件中的一些属性。 zip文件存储在CI服务器上的已知位置。
/known location/file.zip
|
+--- properties/details.properties
以下不起作用
<project name="test" basedir="." >
<property file="/known location/file.zip/properties/details.properties"/>
....
</project>
答案 0 :(得分:1)
您可以将文件解压缩到临时位置,然后加载解压缩的属性文件
<target name="load-zipped-props">
<unzip src="${propfile-name}.zip" dest="${unzip-destination}" />
<property file="${unzip-destination}/${propfile-name}.properties"/>
</target>
答案 1 :(得分:1)
由于zip文件和jar文件基本相同,因此您可以使用url
任务的property
形式,并使用jar
网址。
<property url="jar:file:/known location/file.zip!/properties/details.properties" />
请注意网址前面的jar:file:
和!/
将zip文件位置与zip中属性文件的路径分开。
有关jar:
网址语法的详细信息,请参阅JarURLConnection文档。