बाद में जब तक आर्केस्टा के साथ परेशान न करें
सभी जानकारी के लिए आपको मावेन के बारे में जानना होगा, उनकी वेबसाइट पर कुछ पुस्तकों के बारे में पढ़ना होगा । हालाँकि, आप जो हासिल करने की कोशिश कर रहे हैं, उसके लिए यह थोड़ा अधिक है।
आरंभ करने के लिए, निम्न के रूप में वेब एप्लिकेशन के लिए मानक मेवेन संरचना का अनुसरण करते हुए अपना वेब एप्लिकेशन निर्धारित करें। (आपको इसके लिए एक मेवेन आर्काइप की आवश्यकता नहीं है, यह सिर्फ मानक फ़ोल्डरों का एक गुच्छा है, आप इसे 2 मिनट में बना सकते हैं)।
src/main/java
- अपने उत्पादन जावा कोड शामिल हैं
src/main/resources
- आपके उत्पादन में वर्गपथ संसाधन शामिल हैं (जैसे स्प्रिंग संदर्भ)
src/main/webapp
- (जिसमें WEB-INF / web.xml शामिल है लेकिन कोई लिबर फोल्डर नहीं है)
src/test/java
- अपने परीक्षण जावा कोड शामिल हैं
src/test/resources
- आपके परीक्षण संसाधन शामिल हैं (उदाहरण के लिए वेब सेवा परीक्षण आदि के लिए XML फ़ीड)
मूल प्लगइन्स
अगला कदम प्लगइन्स का एक गुच्छा चुनना है। सामान्य संदिग्ध हैं, जाहिर तौर पर स्वच्छ, संकलन और संसाधनों का समर्थन करने वाले (मावेन के हिस्से के रूप में आते हैं लेकिन आप उन्हें कॉन्फ़िगर कर सकते हैं)। फिर आपके पास अचूक यूनिट टेस्टर और WAR प्लगइन होगा। यह एक बहुत ही बुनियादी वेब एप्लिकेशन बनाने के लिए पर्याप्त है।
अधिक उन्नत प्लगइन्स
अगला कदम फाइंडबग्स और पीएमडी प्लगइन्स को पेश करना है जो आपके कोड को पूरी तरह से खत्म कर देगा और विभिन्न संभावित मुद्दों की रिपोर्ट करेगा। आप शायद क्रॉस-रेफरेंसिंग सोर्स कोड के लिए JXR रखना चाहते हैं, TODOs और REFACTOR टैग को ट्रैक करने के लिए टैगलिस्ट इत्यादि। सबसे ऊपर...
... वेब अनुप्रयोगों के लिए जेट्टी प्लगइन का उपयोग करें
आसान डिबगिंग के लिए अपनी IDE के भीतर अपनी WAR फ़ाइल को चलाने के लिए जेट्टी प्लगइन का उपयोग करें। यह तेज़ और छोटा है और इससे काम जल्दी हो जाता है। जेटी होने के नाते आपके मावेन बिल्ड के हिस्से के रूप में आपकी परियोजना को किसी भी मशीन पर बिना किसी जटिल सर्वर पैनल के कॉन्फ़िगर किए गए आईडीई की आवश्यकता के बिना परीक्षण किया जा सकता है। यह आपको अन्य डब्ल्यूएआर फाइलों पर निर्भरता की घोषणा करने की भी अनुमति देता है, जिसका अर्थ है कि आप एक एकल कमांड "मावेन क्लीन जेट्टी: रन" के साथ कई वेब अनुप्रयोगों से मिलकर एक पूर्ण कार्य वातावरण उत्पन्न कर सकते हैं। यह कहीं भी काम करता है, और आप एक परीक्षण JNDI कॉन्फ़िगरेशन भी प्रदान कर सकते हैं ताकि आपके स्प्रिंग-इन-इंजेक्ट किए गए डेटा स्रोत सभी बाहरी रूप से कॉन्फ़िगर किए जा सकें। यदि आप एक मानक प्रदर्शन HTML पृष्ठ के साथ इस जेट्टी दृष्टिकोण को जोड़ते हैं (src/test/resources/demo.html
) आप एक कार्यकारी स्थानीय वातावरण प्राप्त करने की कोशिश कर डेवलपर घंटों के oodles को बचाएंगे। एक आदेश और आप कर रहे हैं। सरल।
अपनी IDE कॉन्फ़िगर करना
मावेन के साथ यह आसान है क्योंकि सभी बड़े लड़के इसका समर्थन करते हैं: एक्लिप्स, नेटबीन और निश्चित रूप से मेरे निजी पसंदीदा इंटेलीज। बस अपने IDE को pom.xml पर इंगित करें और यह आपके लिए सभी सूचीबद्ध निर्भरताओं को नीचे लाने का ध्यान रखेगा। के साथ कोई और अधिक मैकिंग WEB-INF/lib
। ग्रहण में, आप आमतौर पर फ़ाइल का उपयोग करते हैं | आयात ... | मावेन परियोजना | pom.xml।
हडसन के साथ एकीकरण
पहले हडसन को स्थापित करें (यह सिर्फ एक वेबप है) और फिर अपने संस्करण नियंत्रण प्रणाली को लक्षित करें ताकि यह उपयुक्त संस्करण की जांच करे। आपका अंतिम चरण इसे कॉन्फ़िगर करना है ताकि यह बिल्ड करने के लिए मावेन का उपयोग करे। जाहिर है मावेन को आपकी बिल्ड मशीन पर स्थापित करना होगा (यह मानते हुए कि यह आपके विकास मशीन से अलग है)।
हडसन स्नैपशॉट केवल बनाता है
हडसन स्नैपशॉट बिल्ड बनाता है, और एक मैनुअल प्रक्रिया के लिए रिलीज़ बिल्ड छोड़ देता है। उस दृष्टिकोण का उपयोग करने का मतलब होगा कि डेवलपर्स अपने कोड को एक स्नैपशॉट संशोधन (जैसे कि 1.0.0-SNAPSHOT) के तहत साझा कर सकते हैं और केवल अगर यह बिल्ड को पास करने में सक्षम है, तो इसे टीम रिपॉजिटरी में साझा किया जाएगा। आमतौर पर, हडसन "mvan क्लीन तैनाती" पर अमल करेगा, हालांकि "साइट" लक्ष्य भी आपकी प्रक्रिया का हिस्सा हो सकता है क्योंकि यह हर बिल्ड के लिए एक छोटी परियोजना वेबसाइट बनाएगा। टीम में डेवलपर्स के पास अपडेटेड स्नैपशॉट बिल्ड होगा जो मावेन निर्भरता प्रबंधन प्रक्रिया के माध्यम से स्वचालित रूप से उनकी परियोजना में शामिल है।
हडसन प्लगइन्स का एक धन प्रदान करता है जो सभी तरह के मैट्रिक्स का समर्थन कर सकता है। मेरा व्यक्तिगत पसंदीदा समय के साथ प्रति प्रोजेक्ट पासिंग टेस्ट की संख्या पर नज़र रखना है। यह प्रबंधन को दिखाने के लिए बहुत अच्छा है कि आपकी इकाई परीक्षण गणना और कवरेज कभी बढ़ती जा रही है।
सामान्य सेटअप मार्गदर्शन
अपनी रिपॉजिटरी को कम से कम निम्नलिखित संरचना में विभाजित करें:
- टीम-विमोचन - आपकी सभी रिलीज़ प्रोडक्शन कलाकृतियाँ यहाँ जाती हैं
- टीम-स्नैपशॉट - आपकी सभी स्नैपशॉट विकास कलाकृतियाँ यहाँ जाती हैं
- तृतीय-पक्ष-विमोचन - आपके सभी सहायक तृतीय-पक्ष लाइब्रेरी यहाँ जाते हैं (जैसे स्प्रिंग, हाइबरनेट आदि)
डेवलपर उपयोगकर्ता खाते टीम रिपॉजिटरी में लिखने में सक्षम नहीं होने चाहिए, या तो स्नैपशॉट या रिलीज़। यह एक डेवलपर को हडसन को बायपास करने में सक्षम करेगा यदि वे जल्दी में हैं और जल्दी से आदर्श बन जाएंगे।
सुनिश्चित करें कि आप हमेशा अपने सभी तृतीय पक्षों के लिए स्रोत, javadocs और SHA हस्ताक्षर डाउनलोड करते हैं। जारवाना उन सभी वर्गों को खोजने के लिए एक उत्कृष्ट रिपॉजिटरी एक्सप्लोरर है।
नेक्सस या आर्टिफैक्ट जैसे रिपॉजिटरी मैनेजर को स्थापित करने पर विचार करें ताकि आपके बढ़ते हुए रिपॉजिटरी पर बेहतर नियंत्रण हो सके।