2011-12-08 15 views
5

मैं निम्नलिखित निर्देशिका संरचनासेटअप Grails परियोजना

--my-app 
    | 
    |--main-app 
    | 
    |--plugins 
     | 
     |--plugin1 
     | 
     |--plugin2 

में grails एप्लिकेशन के अंतर्गत/conf/BuildConfig मैं आवश्यक विन्यास सुनिश्चित करना है कि प्लगइन्स plugins निर्देशिका से लोड किए गए हैं जोड़ दिया है, इसलिए जब मैं एप्लिकेशन चलाता हूं, तो यह सबसे हालिया परिवर्तन उठाता है।

मैं इसे इंटेलिजे में एक प्रोजेक्ट के रूप में स्थापित करने की कोशिश कर रहा हूं जिसमें 3 मॉड्यूल हैं, मुख्य एप्लिकेशन के लिए एक और दो प्लगइन में से प्रत्येक के लिए एक है।

  • इंटेलीजे परियोजना फ़ाइलें

    cd my-app/main-app

    grails integrate-with --intellij

  • ओपन उत्पन्न Intellij अंदर से फ़ाइल .ipr (| ओपन परियोजना ... फाइल) उत्पन्न करें: मैं निम्नलिखित की कोशिश की । यह मुख्य आवेदन और Grails मॉड्यूल के रूप प्लगइन्स

हालांकि हर बार जब मैं एक प्लगइन से एक वर्ग खोलने, IntelliJ की रिपोर्ट है कि वर्ग दो घटनाओं है कहते हैं। यह प्रत्येक प्लगइन वर्ग प्लगइन ही मॉड्यूल इंटेलीजे स्वचालित रूप से बनाता है कि जो सभी प्लग-इन होता है में एक बार

  • के लिए इंटेलीजे मॉड्यूल में पता लगाया जा रहा है

    1. एक बार लगता है। मेरे मामले में, इस मॉड्यूल main-app-grailsPlugins

    परियोजना संरचना को देखने मैं plugin1 और plugins2main-app-grailsPlugins से के लिए सामग्री जड़ों को दूर करने की कोशिश की नाम पर है, लेकिन वे अपने आप फिर से वापस जोड़ दिए जाते हैं।

    क्या इसे रोकने के लिए कोई तरीका है, या इन-प्लेस प्लगइन वाले Grails ऐप के लिए इंटेलिजे प्रोजेक्ट को सही तरीके से स्थापित करने का कोई अन्य तरीका है। मैं Grails 1.3.7 और इंटेलीजे उपयोग कर रहा हूँ 10.5.4

  • +0

    क्या आपने अपने Grails प्रोजेक्ट को आईडीईए में मौजूदा स्रोत से आयात करने की कोशिश की है, बिना एकीकृत के? किस वर्ग को डुप्लिकेट के रूप में रिपोर्ट किया गया है, यह कहां स्थित है? –

    +0

    डुप्लिकेट समस्या तब नहीं होती है जब मैं एकीकृत-उपयोग का उपयोग नहीं करता, लेकिन मुख्य ऐप और प्लगइन के बीच निर्भरता सही तरीके से सेटअप नहीं होती है अगर मैं इसे –

    +0

    डॉन करता हूं, तो 'मुख्य पर ग्राइल्स सेटिंग्स को सिंक्रनाइज़ करने का प्रयास करें -एप 'मॉड्यूल। – Sergey

    उत्तर

    0

    के बाद एक ऐसी ही स्थिति में मेरे लिए खूबसूरती से काम किया है:

    1. सुनिश्चित करें कि अपने स्थानीय प्लगइन्स सही ढंग से दर्शाया जाता है:

      grails.plugin.location.MyPlugin= "../plugins/MyPlugin"

    2. एक खाली परियोजना बनाकर शुरू करें - यानी, कोई मॉड्यूल नहीं है!
    3. आयात न करें या किसी भी अन्य तरीके से "autogenerate" ipr फ़ाइलें
    4. महत्वपूर्ण!अपने "निर्भरता ग्राफ" में कम प्लग इन के साथ बाहर शुरू
    5. क्लिक करें फ़ाइल> नया मॉड्यूल
    6. grails मॉड्यूल चुनें
    7. प्वाइंट अपने प्लगइन की जड़ "सामग्री रूट" (मॉड्यूल नाम स्वचालित रूप से भरा जाना चाहिए)
    8. दोहराएँ 5-7 से अधिक नहीं प्लगइन्स तक
    9. दो से बहुत अधिक प्लग इन के साथ 5-7

    यह मेरे लिए यह करता है के रूप में समान तरीके से अपने मुख्य अनुप्रयोग के लिए एक मॉड्यूल बनाने के द्वारा समाप्त!

    1

    IntelliJ विचार के साथ 12 परम यह बहुत आसान है:

     
    "File" 
        --> "Import Project..." 
         --> select your grails application, "OK" 
          --> Select "Create project from existing sources", "Next" 
           --> "Next" 
            --> "Next" 
             --> Select JDK, "Next" 
              --> Select grails version, "Next" 
                --> "Finish" 
    

    inplace प्लगइन्स स्वचालित रूप से मॉड्यूल के रूप में जोड़ दिया जाएगा। परिणाम: http://d.pr/i/YHkk

    +0

    इसके काम करता है, लेकिन मैं डीबग कमांड चला नहीं सकता। – Gadonski

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