2008-12-08 9 views
18

जबकि जे 2 ईई मॉड्यूल संदर्भ सुविधा आपको सामान्य जावा लाइब्रेरी प्रोजेक्ट बनाने की अनुमति देती है, मुझे वेब सामग्री के लिए ऐसा करने का एक साफ तरीका नहीं मिल रहा है।ग्रहण परियोजनाओं के बीच वेब सामग्री को साझा करने के लिए कैसे करें

मेरे पास सामान्य जेएसपी, सीएसएस फ़ाइलें, जावास्क्रिप्ट पुस्तकालय और यहां तक ​​कि वर्णनकर्ता टुकड़े हैं जो मैं कई गतिशील वेब प्रोजेक्ट्स में उपयोग करना चाहता हूं, ताकि ये कलाकृतियों को संपादित किया जा सके, मैं केवल एक ही स्थान पर हूं, लेकिन इनमें से प्रत्येक में निर्यात किया जाएगा गतिशील वेबप्रोजेक्ट WAR फ़ाइलें।

मुझे आश्चर्य है कि मुझे अपनी स्क्रिप्ट लिखने और निर्यात प्रक्रिया में शामिल होने के बिना वेब स्पेस में पुन: प्रयोज्यता को बढ़ावा देने का कोई तरीका नहीं मिल रहा है।

क्या ऐसा करने का कोई तरीका है? धन्यवाद। मैट।

उत्तर

4

मुझे लगता है कि आपकी अपनी स्क्रिप्ट लिखना (उदाहरण के लिए एंटी का उपयोग करके कस्टम बिल्ड चरण, ग्रहण में आसानी से विन्यास योग्य) अधिक व्यावहारिक समाधानों में से एक है।

आप कई वेबपैप्स भी बना सकते हैं और अपने संबंधित संसाधनों का संदर्भ दे सकते हैं - यह सीएसएस, छवियों और इसी तरह के साथ आसान होगा, जेएसपी के साथ इतना नहीं है कि आपके कोड को उपलब्ध होने की आवश्यकता है।

मैं संदर्भ के लिए टॉमकैट crossContext = "true" विकल्प के साथ कुछ चालें कल्पना कर सकता हूं (उदा। वेबप्लिकेशंस), एक एप्लिकेशन को किसी अन्य एप्लिकेशन में कक्षाओं तक पहुंचने में सक्षम बनाता है, लेकिन अभी तक उन्हें आजमाया नहीं है।

खेद है - मुझे विश्वास है कि इस सवाल का जवाब आप सुनना ...

+0

तो मैंने ऐसा किया, लेकिन यह बिल्कुल आरामदायक नहीं है। –

3

आप सबवर्सन का उपयोग कर रहे हैं, तो आप svn:externals इस्तेमाल कर सकते हैं दोनों परियोजनाओं में आम फ़ाइलों को संदर्भित करना चाहते हैं नहीं है। फिर आप एक ही स्थान पर सामान्य फ़ाइलों को संपादित कर सकते हैं, और यदि आप svn up करते हैं तो सभी सिंक्रनाइज़ किए जाएंगे।

+0

मैंने इस दृष्टिकोण का उपयोग किया है और यह बहुत अच्छी तरह से काम करता है। फिर भी यह अच्छा होगा अगर किसी प्रकार के जेएसपी जेएआर को परिभाषित करने का कोई तरीका था जिसे आप निर्भरता के रूप में देख सकते हैं। –

12

मैं एक ही समस्या के साथ कुश्ती कर रहा हूं, और अंत में एक अच्छे समाधान पर ठोकर खाई: "लिंक्ड फ़ोल्डर्स"। यह एक ग्रहण सुविधा है जो सिम्लिंक के समान काम करती है - यह आपको एक ही भौतिक फ़ोल्डर को कई परियोजनाओं में मैप करने की अनुमति देती है। इस समाधान के बारे में अच्छी बात यह है कि इसे किसी विशेष बिल्ड चरण की आवश्यकता नहीं होती है, इसलिए एक्लिप्स स्वचालित रूप से परीक्षण के लिए आपके स्थानीय टॉमकैट सर्वर में परिवर्तनों को तैनात कर सकता है।

मेरी कॉन्फ़िगरेशन निम्नानुसार है: मेरे पास "साझा सामग्री" नामक एक ग्रहण परियोजना है। वेबकंटेंट निर्देशिका के अंदर, एक उपनिर्देशिका "shareRoot" है। सभी पुन: प्रयोज्य फाइलें - .jsp, .css, आदि - कहीं भी साझाकंटेंट/वेबकंटेंट/शेयर रूट के अंतर्गत स्थित हैं। यह एक गतिशील वेब प्रोजेक्ट है ताकि सभी उपयुक्त संपादक सक्षम हो जाएं, लेकिन मैं वास्तव में इसे कभी भी बना या तैनात नहीं करता हूं।

मेरी अन्य परियोजनाओं में, मैं shareRoot पर इंगित एक लिंक्ड फ़ोल्डर जोड़ता हूं। ग्रहण 3.6 में, कदम हैं:

  1. पैकेज Explorer में, परियोजना पुन: प्रयोज्य फ़ाइलों को शामिल करने की जरूरत है इस बात का WebContent निर्देशिका पर राइट क्लिक करें।

  2. नया -> फ़ोल्डर चुनें।

  3. "उन्नत >>>" बटन पर क्लिक करें।

  4. "वैकल्पिक स्थान (लिंक किए गए फ़ोल्डर)" ​​लिंक बटन का चयन करें।

  5. इसके अंतर्गत टेक्स्टबॉक्स में, ब्राउज़ करें पर क्लिक करें।

  6. अपने स्रोत पेड़ में, साझाकंटेंट/वेबकंटेंट/शेयर रूट पर नेविगेट करें। फिर सभी संवाद दूर होने तक ठीक/खोलें/समाप्त बटन पर क्लिक करें।

साझा सामग्री अब आपके प्रोजेक्ट में मैप की गई है। कष्टप्रद, आपको इन फ़ाइलों का संदर्भ देते समय URL में "shareRoot /" शामिल करना होगा, लेकिन आप अपने पसंदीदा यूआरएल रीराइटिंग फ़िल्टर का उपयोग करके इस पर काम कर सकते हैं।

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

-1

haha, मैं यू एक देर आश्चर्य

मैं चीनी हूँ देना, मेरी अंग्रेजी गरीब है, लेकिन मैं यू कर सकते हैं।

ओलाफ कोक सही है, लेकिन उसका जवाब सही नहीं है।

यहां सही जवाब है। आपको यूआरएल का पालन करना होगा, यह आपको हेप कर सकता है।

click here

यूआरएल पेज में

, संपत्ति सामग्री बॉक्स के लिए उदाहरण सटीक नहीं है, आप मुझे fllow:

अगर एक फ़ाइल साझा करने की आवश्यकता:

a.jsp svn://myhome.com/svn/myproject/trunk/a.jsp 

अगर की जरूरत एक फ़ोल्डर साझा करें:

xml svn://myhome.com/svn/myproject/trunk/xml 
संबंधित मुद्दे

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