2013-04-29 13 views
18

में जावा ईई परिनियोजन मेरे पास एक काफी जटिल जावा ईई प्रोजेक्ट है जिसे मैवेन से ठीक बनाया जा सकता है। इसे आईडीईए में आयात करने के बाद, मैंने फ्रंटल डब्ल्यूएआर और बैकएंड ईएआर की स्थानीय वेबलॉगिक 12 सी सर्वर पर काम करने की तैनाती की स्थापना की थी। इस परियोजना में कई 'आम' कलाकृतियों को जार के रूप में पैक किया गया है और दोनों फ्रंटेंड और बैकएंड कलाकृतियों द्वारा उपयोग किया जाता है। तैनाती के लिए, मैंने पैकेजिंग/अनपॅकिंग पर कुछ समय बचाने के लिए विस्फोटित कलाकृतियों का उपयोग किया, सब कुछ उस बिंदु तक ठीक काम करता है।Intellij IDEA

विकास के दौरान, मैं कुछ जावा स्रोतों को संपादित करता हूं और अद्यतन वेबलॉगिक में अद्यतन कलाकृतियों को पुन: नियोजित करने का प्रयास करता हूं। मैं Shift + F10 दबाता हूं, पुनर्वितरण कलाकृतियों का चयन करता हूं, मुझे लगता है कि आईडीईए परियोजना का निर्माण कर रहा है, परियोजना पर सर्वर पुनर्वितरण, और अधिकतर नहीं, मुझे हालिया परिवर्तनों में से कोई भी दिखाई नहीं देता है। यहां तक ​​कि अगर मैं स्पष्ट रूप से पुनर्निर्माण परियोजना का चयन करता हूं और फिर कलाकृतियों को पुन: नियोजित करने का प्रयास करता हूं, तो सर्वर पर कोई भी परिवर्तन नहीं देखा जा सकता है। तैनात कलाकृतियों में मेरे परिवर्तन करने का एकमात्र सुरक्षित तरीका package लक्ष्य को कॉल करने वाले कमांड लाइन से मेवेन को आमंत्रित करना है, और उसके बाद आईडीईए से पुन: नियोजन करना है। (कोई जेआरबेल स्थापित नहीं है, या तो आईडीई या वेबलॉगिक पर इस्तेमाल किया जा रहा है, और मैं इस तरह से रहना चाहता हूं)।

क्या आईडीईए से अपेक्षित व्यवहार है? क्या यह हमारी परियोजना या कुछ वैश्विक के लिए विशिष्ट हो सकता है? क्या आईडीईए यह पता लगाने में सक्षम होना चाहिए कि कौन सी परियोजनाओं को पुनर्निर्मित और पुनर्निर्मित करने की आवश्यकता है और फिर सर्वर पर ईएआर/युद्ध कलाकृतियों को फिर से तैनात करना चाहिए? क्या मुझे उस लक्ष्य को प्राप्त करने के लिए मेरी तरफ से किसी भी मदद की ज़रूरत है?

+0

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

+0

दोनों मूल परियोजना और उपप्रोजेक्ट्स SNAPSHOT संस्करणों का उपयोग कर रहे हैं। डब्ल्यूएआर और ईएआर मॉड्यूल में सभी निर्भरताओं को सामान्य निर्भरताओं के रूप में शामिल किया गया है, कोई ईजेबी मॉड्यूल निर्भरता का उपयोग नहीं किया जाता है। –

उत्तर

1

क्या आपका रन/डीबग कॉन्फ़िगरेशन है? यह जांचें, अगर पहले से नहीं है तो नहीं।

त्वरित मेनू में

, विन्यास संपादित करें> चलाएँ/डिबग विन्यास खिड़की:

  • सर्वर टैब:

    • 'अपडेट' कार्रवाई पर: पुनः आरंभ सर्वर
    • शुरूआत से पहले: सेट ' रन मैवेन क्लीन 'और' रन मैवेन इंस्टाल '
  • डिस्प्लेमेंट टैब

    • आपके कान को यहां सम्मिलित करता है।/या Maven के साथ विचार से
+0

मुझे डर है कि आप मेरे प्रश्न के साथ बिंदु याद करते हैं। लक्ष्य 1 है) सर्वर को पुनरारंभ किए बिना तैनाती को अद्यतन करें, 2) इसे पूरी तरह से आईडीईए के भीतर प्राप्त करें और स्पष्ट रूप से मेवेन का आविष्कार किए बिना। –

1

यकीन है कि यह विशिष्ट जवाब आपके प्रश्न लेकिन क्या मैं तुम्हें कर सकते हैं सुझाव है की कोशिश करने के लिए कॉन्फ़िगर weblogic Maven प्लगइन

तो आप कमांड लाइन से तैनाती निष्पादित कर सकते हैं नहीं है समर्थन। अपनी परियोजना के ठीक तरह से स्थापित किया गया था :

  1. http://docs.oracle.com/cd/E21764_01/web.1111/e13702/maven_deployer.htm
  2. http://www.youtube.com/watch?v=hagaMr6UL6U
+0

मुझे डर है कि अन्य जवाब देने के लिए मेरी टिप्पणी खड़ा हूँ - "। लक्ष्य के लिए ... पूरी तरह से विचार के भीतर और स्पष्ट रूप से Maven लागू बिना इस लक्ष्य को हासिल है" –

0

Evenif अपने अंतिम लक्ष्य पूरे बनाया प्रक्रिया इंटेलीजे निर्माण और तैनाती के विकल्प के द्वारा किया जाता करने के लिए मैं पहले निम्नलिखित की कोशिश करेंगे है मेवेन में आप इंटेलिजे के भीतर आपको maven pom.xml लोड करने में सक्षम होना चाहिए। सभी मेवेन बिल्डिंग कमांड और तैनाती सेटिंग जो आप एमवीएन कमांड लाइन के माध्यम से कर रहे थे, एक अच्छी तीन संरचना में आपके इंटेलिजे के मेवेन पैनल में दिखाई देगी।

इस बाहर काम करता है तो स्पष्ट रूप से पुस्तकालयों कि आपके इंटेलीजे निर्माण के माध्यम से निर्माण कर रहे हैं में से एक ठीक से सही स्थान में स्थापित किया जा रहा नहीं कर रहे हैं। आप जो जार में से एक, कान को कम करने की जरूरत है, या युद्ध एक भी परिवर्तन अपने आप और फिर जाँच फ़ाइल की तिथि स्थान यह या तैनात नहीं किया जा रहा है में अद्यतन किया जाता है कि क्या से प्रभावित हो गया है।

लपेट के लिए, मेरी विनम्र sugestion हालांकि आपके J2EE परियोजनाओं के लिए या तो Maven या Gradle IntelliJ पैनलों का प्रयोग है। जैसा कि आप IntelliJ विचार के माध्यम से पूरी तरह से अपनी परियोजना को बनाए रखने के निर्धारित लक्ष्य को प्राप्त करते हैं। इसके अलावा आप जो भी प्लगइन अपने मेवेन में जोड़ते हैं वह आपके विचार के मेवेन/ग्रेडल पैनल में दिखाई देता है। यह एक काफी सीधा आगे दृष्टिकोण है और आप इंटेलिजे के भीतर एक शक्तिशाली और लचीली तैनाती और उपकरण बनाना चाहते हैं जैसे आपकी वांछित।

+0

समस्या appearently बाहरी निर्भरता बल्कि अन्य उप की निर्भरता से निपटने के साथ नहीं है। मेवेन का उपयोग करने का सुझाव मेरे व्यक्त लक्ष्य के विपरीत है जो मेरे आईडीई से सब कुछ करने में सक्षम है। बेशक मैं इस परियोजना के लिए मैवेन का उपयोग करता हूं और इसे अपने सीआई सर्वर आदि पर बड़े पैमाने पर उपयोग करता हूं, लेकिन यह एक पूरी तरह से अलग कहानी है। –