2009-07-02 13 views
7

मुझे ग्रहण पसंद है और मैं इसका उपयोग करना चाहता हूं, समस्या यह है कि मैं svn से बाहर निकलने के बाद परियोजनाओं को कॉन्फ़िगर करने के लिए एक सरल और तेज़ तरीका नहीं समझ सकता।इंटेलिज आइडिया प्रोजेक्ट्स के लिए ग्रहण का उपयोग

सभी परियोजनाओं को मैं के साथ काम कई मॉड्यूल है और एक शीर्ष फ़ोल्डर जो चार फ़ोल्डर हैं के साथ कॉन्फ़िगर किया गया है: निर्माण उत्पादन, libs, मुख्य और प्रोफाइल।

विस्तार में:

  • libs libs, परीक्षण libs और सामान्य उपयोग के libs संकलन में शामिल है।
  • मुख्य तीन फ़ोल्डर हैं: व्यक्तिगत, परीक्षण और उत्पादन: (स्रोतों के लिए) जावा, संसाधनों और webcontent
  • प्रोफाइल (JSPs, सीएसएस, जे एस, imgs और पसंद के लिए) (ibatis एक्सएमएल जैसी चीजों के लिए) तीन फ़ोल्डर हैं जो लक्ष्य पर्यावरण के आधार पर निर्माण में जोड़े गए हैं।

ग्रहण का उपयोग करके मैं इसे कैसे प्राप्त कर सकता हूं? यह एकमात्र चीज है जिसे मैं इस विचार से नापसंद करता हूं, मुझे हमेशा एक परियोजना को कॉन्फ़िगर करना मुश्किल होता है (और जिस तरह से वह चाहता है: पी)

मुझे हमेशा बताया गया कि ग्रहण एक बहुत सख्त संरचना का उपयोग करता है अपनी परियोजनाओं के लिए, लेकिन मुझे विश्वास नहीं है कि कोई समाधान नहीं है और मुझे सिर्फ आइडिया के साथ रहना है। मैं अपनी पसंद के साथ काम करना चाहता हूं, मुझे लगता है कि यह मौलिक है।

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

उत्तर

5

निश्चित रूप से ग्रहण कार्यक्षेत्र में बाधाएं आती हैं लेकिन यह काफी लचीला है (लिंक किए गए फ़ोल्डर के साथ और समर्थन को शामिल/बहिष्कृत करें)। the project configuration tutorial में कुछ विस्तृत उदाहरण हैं।

यदि मैं सही ढंग से लेआउट को समझता हूं तो मुझे लगता है कि आपको इस संरचना को बदलने की आवश्यकता नहीं है (कम से कम स्रोतों के लिए)। आप जावा प्रोजेक्ट्स और/या गतिशील वेब प्रोजेक्ट्स (बाद में वेब "मॉड्यूल" के लिए) का एक समूह बना सकते हैं, प्रति मॉड्यूल में से एक (आपको एक आइडिया प्रोजेक्ट को ग्रहण कार्यक्षेत्र के रूप में और एक मॉड्यूल परियोजना के रूप में मॉड्यूल के रूप में देखना चाहिए)। आप वेबकंटेंट को सामग्री निर्देशिका, मुख्य/जावा और मुख्य/संसाधन जावा स्रोत फ़ोल्डर्स के रूप में सेट कर सकते हैं और आप जार को libs से बिल्ड पथ में जोड़ सकते हैं (या बस उन्हें वेबकंटेंट/WEB-INF/lib निर्देशिका में डाल सकते हैं)।

सबसे जटिल चीजें प्रोफाइल और संकलन/परीक्षण/सामान्य पुस्तकालय हैं। मैं प्रोजेक्ट के निर्माण पथ को सामान्य और संकलित libs डाल दूंगा और टेस्ट रन कॉन्फ़िगरेशन के क्लासपाथ में स्पष्ट रूप से परीक्षण libs जोड़ दूंगा। प्रोफ़ाइल के लिए मुझे एक साधारण विधि नहीं पता - शायद एक चौथा लिंक वाला फ़ोल्डर जो हमेशा उपयोग किए जाने वाले मानचित्र को मानचित्र करता है ...

Idea migration faq दोनों विचारों के बीच कुछ महत्वपूर्ण मतभेदों को सारांशित करने में भी मदद कर सकता है।

+0

उत्तर के लिए धन्यवाद, मुझे लिंक किए गए फ़ोल्डर के बारे में पता नहीं था। –

4

यदि आपको सही ढंग से समझते हैं तो आप एक नया निर्माण करके परियोजना को "आयात" कर सकते हैं।

  1. फ़ाइल -> नई -> जावा परियोजना
  2. का चयन करें "प्रोजेक्ट बनाएं मौजूदा स्रोत से" और
  3. क्लिक करें अगले क्रम में अपनी परियोजना-निर्देशिका के लिए ब्राउज़ करें देखने के लिए कि ग्रहण जिस तरह से आप चाहते हैं मिल गया है यह

आमतौर पर एक्लिप्स आपको प्रोजेक्ट लेआउट का पता लगाने पर अच्छा काम करता है, इसलिए इसे ऐसा करना चाहिए। इसके अतिरिक्त, जैसे Csaba_H ने कहा, आपको परीक्षण सामग्री के लिए प्रोजेक्ट को अनुकूलित करना पड़ सकता है।

एक और समाधान इस परियोजना को Apache Maven 2 जैसे निर्माण प्रणाली में माइग्रेट कर रहा है (मुझे पता है कि यह एक प्रोजेक्ट प्रबंधन उपकरण है;))। सभी आधुनिक आईडीई (केवल तृतीय पक्ष प्लग-इन M2Eclipse या Q for Eclipse के साथ ग्रहण) सीधे मैवेन प्रोजेक्ट्स आयात करने का समर्थन करते हैं ताकि आपको कुछ भी अनुकूलित न करना पड़े। अतिरिक्त मेवेन का एक निर्भरता प्रबंधन है जो स्कोप (संकलन, परीक्षण, रनटाइम) के आधार पर डाउनलोड निर्भरताओं का ख्याल रखता है, उन्हें सही कक्षा में जोड़ता है। मेवेन आमतौर पर "कॉन्फ़िगरेशन पर सम्मेलन" नियमों का पालन करता है और इसलिए यह आपके जावा/टेस्ट क्लासेस/संसाधनों के लिए मानक पथ को परिभाषित करता है, लेकिन यदि आप चाहें तो उन्हें अपने लेआउट में कॉन्फ़िगर कर सकते हैं। यदि आपने इसे आज़माकर चुना है तो आपको मुफ्त पुस्तक Maven: The Definitive Guide

+0

मैंने कहा है ... कम से कम 10 परियोजनाएं और उनमें से कोई भी मेवेन का उपयोग नहीं करता है: पी मैं मैवेन के साथ प्रत्येक को कॉन्फ़िगर नहीं करूंगा, मुझे ऐसा करने के लिए समय कभी नहीं मिलेगा। –

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