2009-12-08 17 views
12

में Grails निर्भरता का उपयोग कैसे करें तो मैं finally मेरी निर्भरता Grails के साथ काम कर रहा है। अब, मेरा आईडीई, उदाहरण के लिए इंटेलिजे या ग्रहण, इसका लाभ कैसे ले सकता है? या क्या मुझे वास्तव में मैन्युअल रूप से प्रबंधित करना है कि मेरे आईडीई "विकास समय" पर कौन से वर्गों के बारे में जानता है?अपने आईडीई

BuildConfig.groovy स्क्रिप्ट सेटअप सही (see here), आप किसी भी मुसीबतों के बिना vi या अपने पसंदीदा संपादक के साथ दूर कोड, तो grails compile जो हल होगा चलाने के लिए और Ivy cache और में निर्भरता डाउनलोड बंद तुम जाओ में सक्षम हो जाएगा है ...

अगर, हालांकि, आप ग्रहण या इंटेलीजे की तरह एक IDE का उपयोग कर रहे हैं, तो आप जबकि कोडिंग हाथ पर निर्भरता की आवश्यकता होगी। जाहिर है - क्योंकि इन जानवरों को उन्हें "वास्तविक समय" त्रुटि पहचान/संकलन प्रक्रिया के लिए आवश्यकता होगी।

अब, जबकि यह निश्चित रूप से संभव सभी वर्गों सब जगह है कि आपके आईडीई के लिए अज्ञात हैं अधिक उज्ज्वल लाल रंग में चमक के साथ कोड करने के लिए है, यह निश्चित रूप से ज्यादा नहीं मज़ा ... है

मेवेन समर्थन या जिसे आधिकारिक तौर पर पोम फ़ाइल के साथ खुशी से जीवन कहा जाता है, कम से कम इंटेलिजे में कोई अतिरिक्त "जार निर्देशिका" पॉइंटर्स की आवश्यकता नहीं होती है। मैं Grails निर्भरताओं के साथ ऐसा करने में सक्षम होना चाहता हूं।

वर्तमान में मैं उन्हें BuildConfig.groovy में परिभाषित कर रहा हूं और इसके अतिरिक्त मैं अपने स्थानीय डिस्क पर वर्तमान जार को कॉपी/पेस्ट करता हूं और आईडीई को इंगित करता हूं।

बहुत संतोषजनक नहीं है, क्योंकि मैं कोड परिवर्तन के संबंध में अत्यधिक अस्थिर परियोजना मॉड्यूल वातावरण में काम कर रहा हूं। और यह स्थिति मुझे सीधे "जार नरक" में बंद कर देती है, क्योंकि मेरी "विकास और निर्माण-निर्भरता" आसानी से सिंक हो जाती है और मुझे मैन्युअल रूप से प्रबंधन करना होता है, यानी मेरे दिमाग के साथ ...

और मेरा दिमाग अन्य सामानों के साथ व्यस्त होना चाहिए ...

धन्यवाद! राउल

पीएस: मैं वर्तमान में Grails 1.2M4 और IntelliJ 92.105 का उपयोग कर रहा हूं। लेकिन , Grails और अलग है, भविष्य IDEs के भविष्य के संस्करणों पर जवाब जोड़ने के लिए स्वतंत्र लग रहा है के रूप में में आते हैं ...

+0

आपने अब तक यह पता लगाया होगा, लेकिन मुझे एक ही समस्या हो रही थी। Http://stackoverflow.com/questions/2774497/intellij-idea-grails-not-seeing-jar – ptsw

उत्तर

1

आप का प्रयास किया था

grails integrate-with --intellij 

कम से कम 1.2.0RC1 में इस IntelliJ बनाता है प्रोजेक्ट फाइलें - लेकिन मुझे यकीन नहीं है कि निर्भरताएं भी इस द्वारा प्रबंधित की जाती हैं।

+0

1.2M4 में, एकीकृत करने के साथ ऐसी कोई चीज़ नहीं है ... – raoulsson

+0

1.2.0.RC1 का उपयोग करें - वहां यह है। –

+0

धन्यवाद स्टीफन। मैंने अभी 1.2.0.आरसी 1 और इंटेलिजे रिलीज 9.0 डाउनलोड किया है। मैंने खोल में एक प्रोजेक्ट बनाया, मैवेन (जोडा-टाइम) से निर्भर निर्भरताओं ने एक नियंत्रक बनाया जो डेटटाइम आयात करता है, इसे संकलित करता है। सब अच्छा। फिर "grails integrate-with --intellij" चलाएं, प्रोजेक्ट फाइलें बनाता है लेकिन आईडीई बाद में निर्भरताओं को पहचान नहीं पाता है: -/ – raoulsson

2

यह नवीनतम ईएपी निर्माण में तय हो गई है: 94.173 ->http://youtrack.jetbrains.net/issue/IDEA-50459#content-tab=1

इसे यहां डाउनलोड करें: http://www.jetbrains.net/confluence/display/IDEADEV/Maia+EAP

Grails 1.2.1 और इंटेलीजे बिल्ड # 93.94 (संस्करण 9.0.1) और मैं एक ही है मुसीबत। काम करने के लिए इसे प्राप्त करने का एकमात्र तरीका है मैन्युअल रूप से मेरी मैवेन परियोजनाओं से पुस्तकालयों को जोड़ना (नीचे ~/.ivy2 /) अन्यथा, ऊपर सूचीबद्ध ईएपी बिल्ड डाउनलोड करें।

आगे, grails एकीकृत - withintellij काम नहीं करता है। और, वास्तव में, बदतर समस्याओं की ओर जाता है। IntelliJ में अंतर्निहित एकीकरण आपको क्या grails देता है उससे काफी बेहतर है।

+0

@ माइक ध्वनि का वादा करता है। मैं इस ASAP का परीक्षण करूंगा। धन्यवाद – raoulsson

10

आप Grails प्लगइन के साथ ग्रहण है, तो बस चलाने: Grails उपकरण> ताज़ा निर्भरता (वास्तव में मैं एसटीएस के साथ इस की कोशिश की है)।

+0

'Grails Tools' अनुभाग 'प्रोजेक्ट एक्सप्लोरर' दृश्य में वांछित प्रोजेक्ट पर राइट-क्लिक करने पर उपलब्ध है, अगर किसी को इसे ढूंढने में परेशानी हो रही है। – aroth

+0

"Grails कमांड प्रॉम्प्ट" और "रीफ्रेश-निर्भरता" का उपयोग करना काम नहीं करता है, क्योंकि यह ग्रहण के साथ एकीकृत करने के बजाय सीधे grails कहते हैं। मैंने सीधे इन निर्देशों का पालन किया (परियोजना पर संदर्भ मेनू "Grails उपकरण" का उपयोग करें) और सब ठीक था। – Anarchofascist