2012-02-19 14 views
10

मेरा प्रश्न है: मैं फ़ाइलों को एक उपनिर्देशिका में अपने जार में चींटी के माध्यम से कैसे डाल सकता हूं? अभी मेरे कोड है:जावा जार चींटी में फ़ोल्डर

<jar destfile="${dist.dir}\wo42.jar" basedir="bin"> 
<manifest> 
    <attribute name="Main-Class" value="org.alternativedev.wo42.App" /> 
    <attribute name="Class-Path" value="lib" /> 
</manifest> 
<zipgroupfileset dir="lib/." excludes="natives/*" /> 
<fileset dir="data/." includes="." /> 

यह

ROOT-Jar 
-org 
--bla 
-filefromdata1 
-filefromdata2 

की तरह एक संरचना बनाता है लेकिन यह होना चाहिए

ROOT-Jar 
-org 
--bla 
-data 
--filefromdata1 
--filefromdata2 

आप जानते हैं कि मैं क्या मतलब है?

नमस्ते, BigTeddy

+0

की संभावित डुप्लिकेट [कैसे निर्देशिका शामिल करने के लिए:

आदेश फ़ाइलों की प्रतिलिपि बनाने में आप ANT copy task उदाहरण के लिए उपयोग कर सकते हैं एक चींटी जार फ़ाइल में संरचना?] (http://stackoverflow.com/questions/364531/how-to-include- निर्देशिका- संरचना-in-an-ant-jar-file) –

उत्तर

15

बदलें

<fileset dir="." includes="data/**" /> 

के अंतिम पंक्ति के आसपास फ़ाइलों की प्रतिलिपि बनाने की आवश्यकता नहीं है।

एक वैकल्पिक तरीका (जो उपयोगी है जब आप एक अलग नाम है करने के लिए संग्रह में निर्देशिका करना चाहते हैं)

<zipfileset dir="data" includes="." prefix="folder-name-in-jar"/> 
+0

बहुत बहुत धन्यवाद, यह समाधान था :) – jhbruhn

2

सबसे पहले हो सकता है, आप फ़ाइल संरचना की जरूरत है बना सकते हैं और यह सब करने के लिए नकल आवश्यक फाइलें। फिर आप परिणामस्वरूप रूट निर्देशिका पर जार कमांड चलाते हैं।

<copy todir="../dest/dir"> 
<fileset dir="." includes="data/**/*.java"> 
</fileset> 

अधिक कैसे जार पैक करने के लिए पर (मूल) here

संबंधित मुद्दे