2011-08-31 12 views
10

से मैवेन संसाधन लक्ष्य के लिए तर्क देना मैं एक जावा परियोजना के लिए ग्रहण के लिए मेवेन 2 और टॉमकैट प्लगइन्स का उपयोग कर रहा हूं जो टॉमकैट ऐप के रूप में तैनात हो जाता है। मैं एक अलग लक्ष्य के लिए कई भागो विन्यास है, लेकिन मैं विशेष रूप से उस क्रम में कई लक्ष्यों करता है में से एक है: उदाहरण के एक के लिए,ग्रहण

clean resources:resources compile war:war tomcat:deploy 

मैं निर्माण के लिए विशिष्ट config मान हैं करने के लिए अपने संसाधन एक्सएमएल फ़ाइलों में से एक चाहते थे एक निर्माण-निर्माण बनाम देव निर्माण। resources:resources कदम मुझे एक्सएमएल में {टैग} के लिए मूल्यों को निर्धारित करने के लिए अनुमति चाहिए, और मैं कमांड लाइन के माध्यम से ऐसा करने में सक्षम हूँ के रूप में यह खुद कदम है:

<test var="{foo}"> 

mvn resources:resources -Dfoo='bar' चल रहा है का उत्पादन लक्ष्य निर्देशिका

में निम्नलिखित
<test var="bar"> 

ग्रहण में चलाएँ विन्यास प्रबंधन जीयूआई में, वहाँ तर्क और मूल्यों के लिए स्लॉट हैं, लेकिन मैं कमांड लाइन उदबोधन के रूप में एक ही प्रभाव प्राप्त करने के लिए सही संयोजन/मापदंडों का जादू नहीं मिल रहा।

कोई भी जानता है कि कैसे? बेशक, यह भी स्वीकार करेगा कि "आप इसे गलत कर रहे हैं," (क्योंकि मैं शायद हूं) "इसे ऐसा करें।"

धन्यवाद!

उत्तर

11

आप अंततः Maven properties के रूप में उपयोग किए गए पैरामीटर में पारित कर सकते हैं, Eclipse में मेवेन बिल्ड रन कॉन्फ़िगरेशन के पैरामीटर खंड का उपयोग करके (मुझे लगता है कि आप ग्रहण M2E plugin का उपयोग कर रहे हैं)।

निम्नलिखित स्क्रीनशॉट दर्शाता है कि कैसे {jacoco.agent.path} संपत्ति है कि मैं अंत में मेरी Maven पोम में इस्तेमाल किया, रन विन्यास से निर्दिष्ट किया जाता है:

Eclipse Maven parameters

+0

हां, लेकिन मेवेन बनाता है टोमकैट नहीं चलाता है। कम से कम मैं यह नहीं समझ सकता कि इसे कैसे प्राप्त किया जाए। – SimplGy

+0

धन्यवाद! यह उल्लेख करना अच्छा होगा कि इस तरह निर्दिष्ट पैरामीटर को '-D' उपसर्ग की आवश्यकता नहीं है, लेकिन आपको अभी भी किसी भी बैकस्लैश को दोगुनी करने की आवश्यकता है (_e.g._ 'C: \\ path \\ \\ location') –

1

आप चलाने के विन्यास पर जाएँ> अपाचे बिलाव> [आपका बिल्ला ]> तर्क टैब> वीएम तर्क और add -Dfoo = "bar", यह काम करना चाहिए।

मुझे इसे चुनने से पहले कुछ बार रोकना और शुरू करना था, लेकिन यह अंततः मेरे लिए काम करता था।

+0

इसके अलावा, सुनिश्चित करें कि आप कमांड लाइन से ओवरराइड कर सकते हैं। यदि आप नहीं कर सकते हैं, तो यह काम कर रहे मैवेन संसाधन प्लगइन के एक संस्करण पर स्विच करें। मेरे लिए, 2.5 ने सीएलआई से ओवरराइडिंग संपत्ति की अनुमति नहीं दी लेकिन 2.4 किया। – SimplGy

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

  • कोई संबंधित समस्या नहीं^_^