2011-04-20 13 views
6

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

मुझे लगता है कि हम पहले से ही कह रहे हैं Maven थ्रेड चला (हालांकि मैं सकारात्मक नहीं हूँ, और इसकी जांच करने का पता नहीं है)। क्या अनपॅकिंग/रीकैकिंग तेजी से जाने के लिए मैं कोई अन्य अनुकूलन कर सकता हूं? क्या यह सिर्फ एक बीफियर मशीन का उपयोग करने का मामला है? हमारी परियोजना प्रतीत नहीं होती है कि बड़ा (अंतिम परिणाम ~ 70-80 एमबी है) लेकिन यह केवल एक चरण के लिए एक मिनट से अधिक समय लेता है।

उत्तर

1

MAVEN_OPTS = -Xmx [कुछ बड़े मूल्य] निर्दिष्ट करके स्मृति को बढ़ाने का प्रयास करें। मैं इसे काफी तेज़ी से बढ़ाने में कामयाब रहा, लेकिन यह अभी भी टैर से धीमा है। यदि मेरे पास समय है तो मुझे स्रोत मिलेंगे और प्रोफाइल करेंगे।

+0

मैंने अपनी मेमोरी को 1 जीबी पर टक्कर लगी है, और मुझे लगता है कि यह एक * बिट * तेज हो रहा है - यह सिर्फ बिल्ड बॉक्स पर सीपीयू की गति से बंधे जा सकता है, पूरी फाइलों को ज़िप और अनजिप कर रहा है ... – Coderer

+0

मेरे लिए बेंचमार्क, मेरे मामले में 2 जीबी (सिस्टम में 8 जीबी, 2 जीबी + फ्री) पर जा रहा है, असेंबली में थोड़ा धीमा: 34.2 मूल रूप से, 35 जीबी 2 जीबी के साथ। –

2

मैंने यह देखा है जब मैवेन रिएक्टर विशाल है, बहु-मॉड्यूल, बहु निर्भर परियोजना के लिए विशाल निर्भरता पदानुक्रम के साथ। यदि यह आपका मामला है, तो आप अपने मैवेन प्रोजेक्ट को छोटे से विभाजित करने पर विचार कर सकते हैं, या मैवेन असेंबली-प्लगइन के लिए सुधार/सुझाव मांग सकते हैं।

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