2011-06-09 4 views
10

मैं वर्तमान में यह है:मैं अपने सभी जारों के लिए इसे मैन्युअल रूप से निर्दिष्ट किए बिना zipfileset src विशेषता का उपयोग कैसे कर सकता हूं?

<jarjar destfile="a.jar" manifest="Manifest.mf"> 
    <zipfileset src="first.jar"/> 
    <zipfileset src="second.jar"/> 
</jarjar> 

समस्या यह है कि मुझे मैन्युअल रूप से प्रत्येक जार निर्दिष्ट करना है, क्योंकि मुझे विचाराधीन स्रोत पैरामीटर की आवश्यकता है। मुझे ऐसा कुछ चाहिए:

<zipfileset> 
    <include name="*.jar"/> 
<zipfileset> 

और उनकी सामग्री निकाली गई है और मेरे परिणामी संग्रह में शामिल है। क्या यह संभव है?

उत्तर

14

हो सकता है कि आप के साथ पहले जार मर्ज कर सकते हैं:

<zip destfile="out.jar"> 
    <zipgroupfileset dir="lib" includes="*.jar"/> 
</zip> 

और zipfileset में मर्ज किए गए जार निर्दिष्ट करें।

zipgroupfileset

A <zipgroupfileset> allows for multiple zip files to be merged into 

संग्रह। इस फाइलसेट में मिली प्रत्येक फ़ाइल को संग्रह में जोड़ा गया है, उसी तरह zipfileset src फ़ाइलें जोड़े गए हैं।

<zipgroupfileset> is a fileset and supports all of its attributes and 

नेस्टेड तत्व।

5

jarjar wiki पर टिप्पणियों के अनुसार, आप अपने jarjar में इस का उपयोग कर सकते हैं:

<zipgroupfileset dir="lib" includes="*.jar" /> 

मैं इसे करने की कोशिश नहीं की है।

1
<jar destfile="./dist/Ohmyfish.jar" basedir="./bin"> 
    <manifest> 
     <attribute name="Created-By" value="Bruce Yang" /> 
     <attribute name="Main-Class" value="org.bruce.ohmyfish.entry.Main" /> 
    </manifest> 
    <zipgroupfileset dir="./libs" includes="**/*.jar" /> 
</jar>