2012-11-20 8 views
6

मैं जार पैकेजिंग के साथ एक mavenized परियोजना है, मानक लेआउट है:Maven कैसे शामिल करने के लिए/src/मुख्य/संसाधनों

/src/main/java 
/src/main/resources 

जब मैं निष्पादित करें: mvn package

मैं जिसके परिणामस्वरूप जार की उम्मीद कर रहा हूँ (गैर - निष्पादन) फ़ाइल को उस फ़ोल्डर के अंदर संसाधन फ़ोल्डर और सब कुछ शामिल करने के लिए फ़ाइल (यानी कुछ एक्सएमएल फाइलें) शामिल है, लेकिन जब मैं जार फ़ाइल खोलता हूं तो मुझे केवल कॉम फ़ोल्डर दिखाई देता है और शीर्ष स्तर पर संसाधन फ़ोल्डर की सामग्री ...

मुझे लगता है कि उपर्युक्त maven3 के लिए डिफ़ॉल्ट है, लेकिन मैं जार फ़ाइल में resources फ़ोल्डर शामिल करना चाहता हूं ...

+0

कृपया अपने pom.xml, विशेष रूप से 'बिल्ड' अनुभाग –

उत्तर

12

परिणामस्वरूप जार फ़ाइल में आपको src/main/resources दिखाई नहीं देगा।

आप केवल जार फ़ाइल में src/main/resources की सामग्री देखेंगे।

तो, यदि आपने अपनी संसाधन फ़ाइलों के लिए पैकेज संरचना नहीं बनाई है और src/main/resources निर्देशिका में सब कुछ छोड़ दिया है, तो आप अपने संसाधन फ़ाइलों को अपने जार के शीर्ष स्तर पर देखेंगे।

यदि आप चाहते हैं कि आपके संसाधन परिणामस्वरूप जार फ़ाइल में कुछ निर्देशिका के अंतर्गत दिखाई दें, तो src/main/resources पेड़ के नीचे ऐसी निर्देशिका बनाएं।

+0

दिखाएं .. जो मैंने सोचा था ... धन्यवाद – user1800734

+0

लेकिन मैं यह कैसे कर सकता हूं? क्या मैं फ़ोल्डर्स, पैकेज, ... बना सकता हूं? और फिर, मैं उस संरचना में अपनी गुण फ़ाइल की प्रतिलिपि नहीं बना सकता !? – Pete

+0

@Pete। हां, आप 'src/main/resource' के अंतर्गत फ़ोल्डर बनाते हैं। और याद रखें कि जावा में एक पैकेज निर्देशिका वृक्ष के लिए सिर्फ एक फैंसी उपनाम है। तो यदि आप पैकेज का नाम 'org.mycompany.mypackage' है, और आपको वहां 'myproperteis.properties' की आवश्यकता है, तो उस फ़ाइल का पथ' src/main/resource/org/mycompany/mypackage/myproperties.properties' होना चाहिए –

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