2009-02-04 8 views
17

मेरे पास कई अलग-अलग कार्यक्रम हैं, जो अवधारणा एक ही परियोजना में फिट हो सकती हैं। हालांकि, मुझे प्रोजेक्ट फ़ोल्डर के अंदर कई फ़ोल्डर्स बनाने के लिए एक्लिप्स को बताने में परेशानी हो रही है।एक एकल ग्रहण परियोजना के भीतर एकाधिक स्रोत फ़ोल्डरों को कैसे सेट अप करें?

संरचना का एक सरल फार्म होगा:

/UberProject 
/UberProject/ProgramA/ 
/UberProject/ProgramA/com/pkg/NiftyReader.java 
/UberProject/ProgramB/ 
/UberProject/ProgramB/com/pkg/NiftyWriter.java 

है, ProgramA और ProgramB दोनों परियोजनाओं (वास्तव में, वे वर्तमान में जावा परियोजनाओं मौजूदा रहे हैं) है, जो धारणात्मक UberProject में फिट हैं।

मुझे नहीं लगता कि मुझे UberProject जावा प्रोजेक्ट बनाना है; उदाहरण के लिए, यह क्लासपाथ नहीं है। ProgramA और ProgramBकरना लगते हैं जैसे वे जावा परियोजनाओं होना चाहिए (वे साथ ही विभिन्न निर्माण निर्भरता का उपयोग हो सकता है), लेकिन मैं ग्रहण 3.3 में कोई रास्ता नहीं UberProject के तहत दो फ़ोल्डरों कि जावा कोड को रोकने के लिए करना है बनाने के लिए देखते हैं। मैंने दो उप-परियोजनाओं में से प्रत्येक को एक .project फ़ाइल जोड़ने के बारे में सोचा, लेकिन मुझे यकीन नहीं है कि यह उचित है, या तो। ग्रहण सहायता सहायक नहीं है, और मैंने इस विशिष्ट समस्या के बारे में SO पर कुछ भी नहीं देखा।

बस स्पष्ट होने के लिए: UberProject के अस्तित्व की आवश्यकता के अनुसार मान लें। UberProject जावा प्रोजेक्ट हो सकता है, या नहीं; कोई फर्क नहीं पड़ता कि। (संयोग से, इसमें अन्य फ़ोल्डर्स होते हैं जिनमें जावा कोड नहीं होता है।)

उत्तर

17

शायद यह करने के लिए कई तरीके हैं। राइट क्लिक करें प्रोग्राम ए -> पथ बनाएं -> स्रोत फ़ोल्डर के रूप में उपयोग करें। राइट क्लिक करें प्रोग्रामबी -> पथ बनाएं -> स्रोत फ़ोल्डर के रूप में उपयोग करें। प्रोग्रामए और प्रोग्रामबी दोनों एक ही निर्देशिका में वृद्धिशील बिल्ड करेंगे।

2) दो जावा परियोजनाएं (प्रोग्राम ए और प्रोग्रामबी)। आप UberProject को अपने ग्रहण कार्यक्षेत्र के रूप में उपयोग कर सकते हैं जो सबसे आसान होगा या आप बाहरी कार्यक्षेत्र का उपयोग कर सकते हैं और बाहरी परियोजनाओं के रूप में प्रोग्राम ए और प्रोग्रामबी आयात कर सकते हैं।

शायद अन्य तरीके भी हैं (मेवेन मल्टी-मॉड्यूल प्रोजेक्ट)। आपकी पसंद शायद इस बात पर निर्भर करती है कि क्या आपके पास परियोजनाओं के बीच चक्रीय निर्भरता है या नहीं। यह 1 और 2 दोनों को आजमाने के लिए अपेक्षाकृत आसान होना चाहिए और देखें कि आपके लिए सबसे अच्छा क्या काम करता है।

+1

(1) काम करता प्रतीत होता है, या कम से कम, मुझे करीब ले आओ। (अब यह किसी कारण से डिफ़ॉल्ट जावा बिल्डर का उपयोग करने से इंकार कर देता है।) मेरे अंतर्ज्ञान के बावजूद, उबरप्रोजेक्ट को वास्तव में "जावा प्रोजेक्ट" होना आवश्यक था। –

+2

... जावा बिल्डर समस्या को .project फ़ाइल को हाथ से संपादित करके तय किया गया था। –

2

क्या आपको उबरप्रोजेक्ट की आवश्यकता है? मेरे पास एक ही लेआउट है लेकिन फ़ाइल | नई परियोजना के साथ बनाई गई कई शीर्ष-स्तरीय परियोजनाएं हैं। यदि नहीं, तो क्या आप जावा प्रोजेक्ट की बजाय इसे सामान्य बना सकते हैं?

1) UberProject अपने JavaProject है:

+0

यह एक आवश्यक परियोजना है, हाँ; क्षमा करें अगर वह स्पष्ट नहीं था। अन्यथा, मैं भी कई अलग जावा परियोजनाओं का उपयोग करता हूं। मैंने सवाल संपादित किया। –

2

तो आप अपने कार्यक्षेत्र में दो जावा परियोजनाओं के माध्यम से ऐसा कर सकते हैं।
तो सवाल यह है कि समूह दो परियोजनाओं को एक साथ "UberProject" के तहत करने के लिए

एक तरह से एक "UberProject" कार्यक्षेत्र है, और UberProjects के बीच कार्यस्थानों स्विच करने के लिए है। एक विकल्प है कि "उबरप्रोजेक्ट" को एक कार्य सेट (विंडो: वर्किंग सेट्स) के रूप में परिभाषित करना है और उस कामकाजी सेट की परियोजनाओं के रूप में प्र्राम्राम और प्रोग्रामबी जोड़ें। उस कामकाजी सेट का चयन करें, और आप केवल उन परियोजनाओं को देखते हैं।

आपके पास एक जावा प्रोजेक्ट हो सकता है, और इसके लिए कई स्रोत फ़ोल्डर परिभाषित कर सकते हैं। यह आमतौर पर एक ही परियोजना के भीतर "मुख्य" बनाम "परीक्षण" पदानुक्रमों के लिए होता है।

तरीके और तरीके हैं।एक है कि आप के लिए काम करता है :-)

9

आप एक ही परियोजना में एकाधिक स्रोत निर्देशिका हो सकता है, उठाओ लेकिन अपने विवरण यह ध्वनि की तरह आप एक परियोजना है, जो ग्रहण की अनुमति नहीं है में एक से अधिक उप-परियोजनाओं चाहते हैं (जहां तक जैसा की मैं जनता हूँ)।

यदि आप वास्तव में केवल एकाधिक स्रोत निर्देशिका चाहते हैं, जहां ProgramA, ProgramB, आदि में केवल जावा फ़ाइलें हैं और कुछ और नहीं है, तो आप इसे अपेक्षाकृत आसान कर सकते हैं। पैकेज एक्सप्लोरर में अपनी प्रोजेक्ट पर राइट-क्लिक करें, और Build Path -> Configure Build Path... चुनें। पॉप अप करने वाले संवाद में, सुनिश्चित करें कि Java Build Path बाएं फलक में चुना गया है, Source टैब पर क्लिक करें, फिर Add Folder... बटन पर क्लिक करें। आदि सूची से ProgramA चुनें, और ProgramB के लिए दोहराएँ,

आप प्रत्येक स्रोत फ़ोल्डर का अपना उत्पादन फ़ोल्डर है चाहते हैं, बस Allow output folders for source folders चेकबॉक्स चेक करें और के रूप में वांछित आउटपुट फ़ोल्डरों को संपादित करें।

यदि ऐसा नहीं है, वास्तव में, आप क्या करना चाहते हैं, तो एक और विकल्प आपकी परियोजनाओं को एक कार्य सेट में समूहित करना हो सकता है। एक कामकाजी सेट उबरप्रोजेक्ट नहीं है, लेकिन यह पैकेज प्रोजेक्टर में आपकी परियोजनाओं को व्यवस्थित रखने में मदद करता है।

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