Discussion:
How to add a file to existing zip archive into a existing folder
Ravi Roy
2007-06-14 05:56:54 UTC
Permalink
Hi All,



I have a zip archive, which I want to update with adding a new file to
specific folder in the zip archive.



Example :



I have abc.zip containing the directory structure :

mainfolder\a.jar

mainfolder\subfolder\b.jar





My problem is I want to add a c.properties to mainfolder\subfolder. But I
did not find any such example in the documentation.

Though files can be added, but not specified somewhere if somebody wants to
add to a particular directory in zip archive.



The following example adds c.properties to the root of testfile.zip but for
me it is not possible to add this file to a specific folder in the said zip
archive.

------------------------------------------------------------------

<project name="test" default="main">

<property environment="env" />



<property name="zip.dir" value="C:\testzip" />

<target name="main">

<zip basedir="${zip.dir}" destfile="${zip.dir}\testfile.zip"
update="true">

<include name="c.properties" />

</zip>

</target>

</project>





Thanks for any pointers.

Ravi.
Prashant Reddy
2007-06-14 06:27:34 UTC
Permalink
Use <zip> and <zipfileset> tasks.

<zip destfile="${dist}/abc.zip">
<zipfileset dir="dir" prefix="mainfolder/subfolder"/>
</zip>

More here : http://ant.apache.org/manual/CoreTypes/zipfileset.html

HTH
-Prashant
Post by Ravi Roy
Hi All,
I have a zip archive, which I want to update with adding a new file to
specific folder in the zip archive.
mainfolder\a.jar
mainfolder\subfolder\b.jar
My problem is I want to add a c.properties to mainfolder\subfolder. But I
did not find any such example in the documentation.
Though files can be added, but not specified somewhere if somebody wants to
add to a particular directory in zip archive.
The following example adds c.properties to the root of testfile.zip but for
me it is not possible to add this file to a specific folder in the said zip
archive.
------------------------------------------------------------------
<project name="test" default="main">
<property environment="env" />
<property name="zip.dir" value="C:\testzip" />
<target name="main">
<zip basedir="${zip.dir}" destfile="${zip.dir}\testfile.zip"
update="true">
<include name="c.properties" />
</zip>
</target>
</project>
Thanks for any pointers.
Ravi.
Ravi Roy
2007-06-14 08:03:08 UTC
Permalink
Thanks Prashant. Excellent, it worked.
Regards.
Ravi.

-----Original Message-----
From: Prashant Reddy [mailto:***@pramati.com]
Sent: Thursday, June 14, 2007 11:58 AM
To: ***@ant.apache.org
Subject: Re: How to add a file to existing zip archive into a existingfolder

Use <zip> and <zipfileset> tasks.

<zip destfile="${dist}/abc.zip">
<zipfileset dir="dir" prefix="mainfolder/subfolder"/>
</zip>

More here : http://ant.apache.org/manual/CoreTypes/zipfileset.html

HTH
-Prashant
Post by Ravi Roy
Hi All,
I have a zip archive, which I want to update with adding a new file to
specific folder in the zip archive.
mainfolder\a.jar
mainfolder\subfolder\b.jar
My problem is I want to add a c.properties to mainfolder\subfolder. But I
did not find any such example in the documentation.
Though files can be added, but not specified somewhere if somebody wants to
add to a particular directory in zip archive.
The following example adds c.properties to the root of testfile.zip but for
me it is not possible to add this file to a specific folder in the said zip
archive.
------------------------------------------------------------------
<project name="test" default="main">
<property environment="env" />
<property name="zip.dir" value="C:\testzip" />
<target name="main">
<zip basedir="${zip.dir}" destfile="${zip.dir}\testfile.zip"
update="true">
<include name="c.properties" />
</zip>
</target>
</project>
Thanks for any pointers.
Ravi.
---------------------------------------------------------------------
To unsubscribe, e-mail: user-***@ant.apache.org
For additional commands, e-mail: user-***@ant.apache.org

Loading...