2009-06-04 20 views
13

क्या जावा प्रोजेक्ट में कॉन्फ़िगरेशन फ़ाइलों को संग्रहीत किया जाना चाहिए इसके लिए कोई सर्वोत्तम अभ्यास है। इस मामले में फ़ाइल प्रकार जावा गुण फ़ाइल है, लेकिन मैं अन्य प्रोजेक्ट्स में अन्य फाइल प्रकारों का उपयोग करता हूं।जावा एप्लिकेशन कॉन्फ़िगरेशन फ़ाइलों के स्थान के लिए सबसे अच्छा अभ्यास क्या है?

क्या सिफारिश अकेले स्टैंड ऐप एप्लिकेशन (.jar) से वेब ऐप (.war) में भिन्न होगी?

+0

क्या आप बिल्ड करने के बाद कॉन्फ़िगरेशन को बदलने में सक्षम होना चाहते हैं या आप कॉन्फ़िगरेशन को .jar/.war फ़ाइल का हिस्सा बनना चाहते हैं निर्माण? – ScArcher2

+0

@ ScArcher2, यहां हमारे उत्पादन रिलीज के लिए हमने रिलीज अनुरोध किए हैं, इसलिए कॉन्फ़िगरेशन फ़ाइल को बदलना पूरी पैकेज फ़ाइल करने के समान ही परेशानी है। तो मैं पैकेज में कॉन्फ़िगरेशन को रखने के लिए आया हूं –

उत्तर

8

आप इतने अधिक मिल जाएगा ओपन-सोर्स प्रोजेक्ट्स directory structure used by Maven का पालन करें। इस सेटअप में आपका एप्लिकेशन स्रोत कोड src/main/java, प्रॉपर्टी संसाधनों सहित, प्रॉपर्टी फाइलों सहित, src/main/संसाधनों में, और src/main/config में अन्य कॉन्फ़िगरेशन फ़ाइलों में रखा जाता है। यूनिट परीक्षण से संबंधित फाइलें एक समान निर्देशिका संरचना का उपयोग करती हैं; src/test/जावा और src/test/संसाधन।

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

4

आम तौर पर एक सामान्य अभ्यास है कि resources निर्देशिका कॉन्फ़िगरेशन फ़ाइलों के लिए निर्देशिका है जो बिल्ड प्रक्रिया द्वारा बिल्ड आर्टिफैक्ट में कॉपी की गई है। मेवेन इसका उपयोग default project structure में करता है। resources निर्देशिका के भीतर, आपके पास युद्ध के रूप में पैक किए गए एप्लिकेशन में META-INF निर्देशिका और/या WEB-INF निर्देशिका भी हो सकती है।

1

मैं का उपयोग करें:

  • META-INF/ के लिए जार फ़ाइलों
  • वेब-INF/युद्ध के लिए फ़ाइलों
+0

डिफ़ॉल्ट क्लासपाथ पर मेटा-इंफ है? –

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