2013-10-07 5 views
5

मैं जेनकींस का बहुत उपयोग करता हूं और क्लस्टर पर कई अलग-अलग नौकरियां चलाता हूं। प्रत्येक अब और फिर नौकरी कुछ अस्पष्ट त्रुटि के साथ विफल हो जाती है और मैं इस तथ्य को डीबग करने में सक्षम हूं कि जॉब ए एक आर्टिफैक्ट एक्स का उपयोग कर रहा है और नौकरी बी ने अभी डाउनलोड किया है या इसका एक नया संस्करण बनाया है (मेवेन के साथ) ।समवर्ती मेवेन को कैसे संभालें जेनकींस पर बनाता है?

जॉब ए java.lang के साथ विफल रहता है। NoClassDefFoundError या ज़िप फ़ाइल के साथ कुछ और भ्रष्ट या segfault कुछ ज़िप कार्यान्वयन से जावा का उपयोग कर रहा है।

तो स्पष्ट समाधान नौकरियों के लिए निजी स्थानीय मैवेन भंडार का उपयोग करना होगा, लेकिन यह काफी डिस्क और इंटरनेट महंगा समाधान है। इसका मतलब यह होगा कि प्रत्येक नौकरी का मैवेन पूरे इंटरनेट को डाउनलोड करेगा।

कुछ मामलों के लिए जेएआर फ़ाइल से क्लास फाइलों की उत्सुक लोडिंग अक्सर भ्रष्ट होती है जिससे हम नुकसान को सीमित कर सकते हैं लेकिन सब कुछ के लिए ऐसा नहीं करना चाहते हैं।

कोई अन्य समाधान? भंडार के लिए कुछ प्रकार के बेहतर लॉकिंग?

+0

क्या आपने 'अपस्ट्रीम/डाउनस्ट्रीम प्रोजेक्ट बिल्डिंग' विकल्प के दौरान 'लॉक बिल्ड' का पता लगाया है? – artbristol

+0

हां, इसका उपयोग करके, लेकिन यह लगभग किसी भी निर्भरता के साथ हो सकता है, इसलिए यदि मैं सबकुछ के लिए प्लगइन का उपयोग करता हूं तो मेरे पास एक समय में चलाने के लिए मेवेन के साथ केवल एक ही काम हो सकता है :( – toomasr

उत्तर

4

हां, ऐसा लगता है कि मैवेन को एक स्थानीय भंडार में समवर्ती पहुंच पसंद नहीं है (केवल issue हाल ही में खोला गया है, केवल 7 साल पहले)। प्रत्येक नौकरी के लिए रेपो बनाना काफी भारी हो सकता है। हालांकि, एक चर $EXECUTOR_NUMBER है, तो हो सकता है कि आप प्रत्येक जेनकिंस निष्पादक के प्रति मेवेन स्थानीय रेपो बनाने के लिए इसका उपयोग कर सकें।

+2

जेनकिंस में कॉन्फ़िगरेशन विकल्प प्रति बेहतर भंडार के लिए उपयोग करें नौकरी या निष्पादक – khmarbaise

+0

@khmarbaise हां, अच्छा बिंदु। निष्पादक-निर्भर रेपो स्थान जेनकींस वैश्विक विन्यास द्वारा कॉन्फ़िगर किया जा सकता है। – kan

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