मावेन पैकेज काम करता है लेकिन इंटेलीज का निर्माण विफल हो जाता है


91

मेरे पास जेवीके 1.7 परियोजना है जिसमें मेरे मावेन रेपो में स्थानीय जार में मावेन निर्भरता है।

मैं Intellij का उपयोग करके प्रोजेक्ट का निर्माण करने में असमर्थ हूं, उन त्रुटियों के साथ जो एक प्रतीक नहीं मिल सकती हैं (प्रतीक स्थानीय आरएआर से संकुल आयात करने वाला एक वर्ग है)

लेकिन मैं 'mvn पैकेज' का उपयोग करके प्रोजेक्ट को सफलतापूर्वक बना सकता हूं।

मैंने बहुत समय बिताया है समाधान की तलाश में, चीजें जो मैंने पहले ही की हैं:

  • अमान्य कैश
  • स्थानीय जार पर निर्भर 'mvan क्लीन इंस्टाल'
  • इंटेलीज के मावेन कॉन्फ़िगरेशन में 'ऑटोलोड स्नैपशॉट्स' के लिए चिह्नित
  • इन्टेलिज में रिवीपोटेड मावेन
  • Syncornized

यह त्रुटि कुछ समय पहले मेरे जोड़े को ख़ुशी देती है, लेकिन आमतौर पर इंटेलीज को बंद करने और / या 'mvan क्लीन इंस्टाल' करने के लिए किया।

कृपया मदद करे।


1
क्या आपके मावेन रिपॉजिटरी को IntelliJ से सही तरीके से कॉन्फ़िगर किया गया है?
रुचिरा गायन राणावेरा

हाँ यह है, रिपॉजिटरी के लिए पथ वह है जो तब अपडेट किया जाता है जब मैं 'mvan install' का उपयोग करता हूं
यारन मीरन

3
स्थानीय जार स्नैपशॉट या जार का रिलीज़ संस्करण है? यदि जार एक स्नैपशॉट है, तो आपको आइडल के लिए अपडेट को मजबूर करने के लिए intellij Maven सेटिंग्स में 'हमेशा अपडेट स्नैपशॉट' की जांच करनी चाहिए।
एफ। गेरेटर्स

हां यह एक स्नैपशॉट है, मैंने पहले ही उस विकल्प को चिह्नित कर लिया है। लेकिन फिर भी, कुछ भी नहीं बदलता है :(
यारन मीरन

1
सेटिंग्स के कंपाइलर भाग में, "एक्सटर्नल एक्सटर्नल बिल्ड" की जाँच की जाती है? और उपयोग बाहरी बिल्ड में, "निर्भरता परिवर्तन पर पुनर्निर्माण मॉड्यूल" विकल्प की भी जाँच की जाती है?
एफ। गेअर्ट्स

जवाबों:


154

मुझे पता है कि यह देर हो चुकी है लेकिन mvn idea:ideaइस मुद्दे को निष्पादित करना हल है।


3
यह स्वीकृत उत्तर होना चाहिए, क्योंकि यह एक वास्तविक समाधान प्रदान करता है, न कि केवल यही कारण है कि यह विफल हो जाता है। मेरे सभी updoots!
वॉर्कस्ट

4
mvn idea:ideaआज तक नहीं रखा गया है, और जेटब्रेन्स द्वारा बनाए नहीं रखा गया है
शॉन

2
मुझे उसके बाद mvn इंस्टॉल फिर से चलाना पड़ा
Fabio F.

1
उसके बाद बस प्रोजेक्ट का पुनर्निर्माण करें। धन्यवाद।
ड्यूक ट्रान

2
आपने मुझे निराशा से बचाया है। मैं तुम्हें चूम करना चाहते हैं
मार्टिन बैमफोर्ड

29

सभी .iml और अपने POM को हटाने का प्रयास करें। फिर अपनी पीओएम को फिर से अपनी परियोजना में कॉपी और पेस्ट करें और फिर से खोलें और फिर से आयात करें।


13
शायद कुछ भी हटाने से पहले मावेन प्रोजेक्ट के दृश्य में "सभी को फिर से आयात" करने की कोशिश करें,
Zveratko

2
मुझे .iml को भी हटाना पड़ा है, पुनः आयात मावेन ने इसे ठीक नहीं किया है।
डैनियल डे ज़वान

1
@masoodg, बहुत बहुत धन्यवाद! आपने मेरा दिन बचाया! बस फिर से आयात में मदद नहीं मिली। आपके निर्देशों का पालन किया, और यह एक आकर्षण की तरह काम करता है।
टैबलिन

Intellij को बंद करना, प्रोजेक्ट रूट डाइरेक्टरी से फाइल को डिलीट करना *.iml, *.iprऔर *.iwsफिर
Intelij को

16

मुझे पता चला है कि मेरी .iml फ़ाइल और पोम विवाद कर रहे थे और इस मुद्दे का कारण बन रहे थे।


1
मुझे भी ऐसी ही समस्या है। मेरे पास बिल्ड डेट प्लगइन के साथ कॉन्फ़िगरेशन है। इस प्लगइन को इस मूल्य "$ {maven.build.timestamp}" के साथ बिल्डडेट संपत्ति की आवश्यकता है। IntelliJ को इस pom को पार्स करने में समस्या है और iml फ़ाइल को pom के साथ ठीक से सिंक्रनाइज़ नहीं किया गया है। जब मैं टिप्पणी करता हूं संपत्ति buildDate सिंक्रनाइज़ेशन ठीक काम करता है।
१०:१३ से lim:५३ तक के लिए

9
कैसे ठीक करने के लिए कोई सुझाव? मैं काम करने के लिए इंटेलीज को पसंद करूंगा, ऐसा लगता है कि नेटबीन किसी भी परियोजना को चलाती है चाहे कोई भी हो ... यह एक पूर्ण उत्पादकता विध्वंसक है :( ...
ब्रेनो सालगाडो

1
मुझे नहीं पता कि क्या आपका फिक्स समान था, लेकिन मुझे IntelliJ के लिए मजबूर करने के लिए प्रोजेक्ट को फिर से छोड़ना पड़ा और इसे फिर से लोड करना पड़ा, ताकि वह IML फ़ाइल को अपडेट कर सके (जैसा कि मैंने कुछ नई निर्भरताएँ जोड़ी हैं, इसे pom.xml से ताज़ा नहीं किया गया था)
सोनारजेत्सेन

1
The कैसे ’how क्यों’ की तुलना में काफी अधिक उपयोगी है। कृपया कुछ विवरण जोड़ें कि आपने यह समस्या कैसे तय की है।
जोओ माटोस

2
मैंने इंटेलीज को बंद कर दिया। फिर, मैंने डिलीट कर दिया C:\Users\USERNAME\.IntelliJIdea2017.2\system। बाद में, मैंने git clean -xdfसभी गैर-संस्करणित फ़ाइलों को हटाने के लिए स्रोत निर्देशिका में किया, और फिर से परियोजना को आयात किया। अब आकर्षक के रूप में काम करता है।
कोपरपोर

15

कुछ और युक्तियों को जोड़ना क्योंकि यह पहली चीज है जो इस खोज में आई थी जब मुझे इसी तरह की समस्या हो रही थी (परियोजना में निर्मित होती है, इंटेलीज में नहीं), यदि यह किसी और की मदद कर सकती है।

जब मेरे पास यह था तो यह विंडोज और मैक पर एक अलग फिक्स था।

मैक पर, मैं ItellijIDEA / Preferences / Build, Execution, Dep तैनाती / Build Tools / Maven / Maven Home Directory में गया और इसे बंडल किए गए मावेन के बजाय मेरे अलग से स्थापित मावेन का उपयोग करने के लिए सेट किया। बिल्ड की सभी समस्याएं चली गईं।

विंडोज पर, मैं विचार में अपवाद देख रहा था। एसएसएल से संबंधित और मेरे प्रोजेक्ट ट्री में केवल बाहरी पुस्तकालयों की शाखा के तहत जावा था। अन्य साइटों को देखने से ऐसा लगता है कि IntelliJ सिस्टम एक के बजाय अपने निजी JDK का उपयोग करता है (भले ही मेरे मामले में मेरे पास पहले से ही सटीक JDK संस्करण स्थापित था)। मेरा सिस्टम JDK ने कॉर्पोरेट नेक्सस सर्वर के लिए कीस्टोर में स्थापित किया गया है, जो कि IntelliJ निजी JDK के पास नहीं था, इसलिए जब इसे Nexus से फ़ाइलों को प्राप्त करने का प्रयास किया गया था तो अपवादों को फेंक दिया गया था। इसके लिए समाधान इंटेलीज को छोड़ना था, IDEA_JDK नामक एक पर्यावरण चर को JDK को इंगित करने के लिए सेट करें जिसे मैंने पहले ही स्थापित किया था जिसमें उचित सीट्स और IntelliJ को पुनरारंभ करें। बिल्ड की सभी समस्याएं चली गईं।


नवीनतम IntelliJ 2016.3.5 के साथ लिनक्स पर एक ही मुद्दा - पहले यह काम करता था, फिर कुछ POM परिवर्तनों के बाद इसे सिंक से अलग कर दिया गया, और केवल Maven को स्विच करने से मदद मिली, इसलिए यह भी हो सकता है कि केवल Maven को स्विच करने से IntelliJ में एक अद्यतन हो जाता है जो इसका कारण बनता है परियोजना फिर से सिंक में ...
ग्रेगोर


5

आईडीई बिल्ड करते समय मावेन की अपनी खुद की बंडल कॉपी का उपयोग करता है। यदि टर्मिनल पर मावेन आईडीई से अलग है, तो आप चाहते हैं कि वे समान हों।

गोटो (एक मैक पर) - इंटेलीज आइडिया -> प्राथमिकताएं -> निर्माण, निष्पादन, तैनाती -> निर्माण उपकरण -> मावेन। अपने Maven होम डायरेक्टरी के लिए पथ सेट करें Maven के लिए पथ खोजने के लिए जिसका उपयोग आप टर्मिनल से करते हैं, कमांड टाइप करें mvn -versionऔर जिसे dir पथ सहित विवरणों का गुच्छा प्रिंट करना चाहिए। मावेन होम निर्देशिका में डाल दिया ।

सुरक्षित रहने के लिए आप JDK स्थान के लिए भी कर सकते हैं

==== कुछ अन्य बातें जो इस तरह के मुद्दों का कारण बन सकती हैं ===

यदि mvan पैकेज या mvan क्लीन इंस्टॉल बनाता है, तो उसे IDE कैश के साथ कुछ करना होगा। अन्य बातों के अलावा, यह आमतौर पर ऐसी त्रुटियों के साथ मदद करता है ->

फ़ाइल -> अमान्य कैश


4

मुझे पता है कि मुझे इस बातचीत में बहुत देर हो गई है, लेकिन इस मामले में कोई और पोस्ट करना चाहता है। ऐसा होने का एक और कारण यह है कि आप सही रिपॉजिटरी की बात नहीं कर रहे हैं। Intellij अपने मावेन रिपॉजिटरी से एक के बजाय डिफ़ॉल्ट रूप से जार के बंडल संस्करण को चुनता है। पुष्टि करें कि जुड़ा हुआ भंडार सही है।


यदि आपने होमब्रे का उपयोग करके
मावेन स्थापित किया है, तो मावेन

3

मेरे मामले में मेरा iml सिंक में नहीं था, इसलिए मैंने विशिष्ट मॉड्यूल के लिए iml को हटा दिया और फिर maven विकल्प के तहत iml को फिर से बनाने के लिए unignore प्रोजेक्ट का चयन किया


3

कमांड प्रॉम्प्ट से commnad निष्पादित करें: mvn idea:ideaऔर प्रोजेक्ट पर राइट क्लिक करें -> मेनू से निर्भरता फिर से आयात करें


1

"प्रतीक नहीं पाया जा सकता है" का अर्थ है कि इंटेलीज "निर्भरता" को हल करने में सक्षम नहीं है। तो, आप "विश्लेषण" पर क्लिक करके "निर्भरता विश्लेषण" को मजबूर कर सकते हैं -> "विश्लेषण निर्भरता" फिर "विश्लेषण विश्लेषण" का चयन करें:


1

अन्य जवाबों में कई मूल्यवान सुझाव यहां दिए गए हैं, केवल उस समाधान को जोड़ना चाहते हैं जिसने मेरी समस्या के लिए काम किया ।

हमने हाल ही में एक निजी मावेन रिपॉजिटरी का उपयोग करना शुरू किया और हमेशा mvn -s settings.xmlमावेन सेमीडलाइन को लागू करते समय करते हैं । IntelliJ बेशक निजी रेपो के बारे में नहीं जानता है, इसलिए इसे थोड़ी मदद की जरूरत है।

सेटिंग्स पर जाएं -> बिल्ड, एक्ज़ीक्यूशन, डिप्लॉयमेंट -> बिल्ड टूल्स -> मावेन और "यूज़र सेटिंग्स फ़ाइल" विकल्प को ओवरराइड करें।

यहाँ छवि विवरण दर्ज करें


1

मुझे भी यही समस्या थी। के लिए जाओ:

फ़ाइल -> परियोजना संरचना -> मॉड्यूल । अपने मॉड्यूल का चयन करें और " निर्भरता " टैब के तहत , सुनिश्चित करें कि सभी मावेन निर्भरताएं जोड़ी गई हैं।

यह सुनिश्चित करने के लिए कि आपको विचार संपादक में एक समान मुद्दे के बारे में चेतावनी दी गई है: "निर्भरता टैब" से "स्रोत" पर स्विच करें और स्रोत के रूप में अपने src को जोड़ें।


0

मुझे भी यही समस्या थी। मैंने आइडिया सेटिंग्स में 3.0.5 से 3.0.4 तक मावेन संस्करण को बदल दिया है और सभी अब ठीक काम करता है। पता नहीं क्यों मेरी मदद करता है।


0

मैंने कैश को अमान्य करने की कोशिश की, मावेन को स्थापित संस्करण में बदल दिया और कुछ भी काम नहीं किया।

एक नई परियोजना को बंद करने और फिर से बनाने ने इसे हल किया।


0

मैंने परियोजना को बंद कर दिया और रूट पॉम (न केवल फ़ोल्डर, बल्कि पोम फ़ाइल ही) पर क्लिक करके इसे फिर से आयात किया।


0

मैंने बिना किसी खुशी के ऊपर सब कुछ करने की कोशिश की। हालाँकि मैंने एक काम किया जो आखिरकार काम करने के लिए मिला:

मैं C: \ Users \ .IntellijJIdea2018.2 पर गया और पूरे फ़ोल्डर को हटा दिया।

यह IntelliJ के लिए सभी सेटिंग्स और कैश को हटा देता है। मुझे अपने प्रोजेक्ट को स्क्रैम्प से रिइम्पोर्ट करना था, लेकिन एक सिंपल रिमूव और रीइम्पोर्ट ने पहले काम नहीं किया था, लेकिन आखिरकार इसे फिर से काम करना पड़ा।


0

यदि आप ग्रेडेल का उपयोग कर रहे हैं, तो कमांड से नीचे का प्रयास करें। इसने मेरी समस्या हल कर दी

gradle cleanIdea idea


0

बिना किसी रोकटोक के इस सरल प्रक्रिया में लगभग 1 मिनट का समय लगता है।

  • इंटेलीज को बंद करें
  • हटाएं केवल .idea तरह इंटेलीजे विशिष्ट फ़ाइलों / *, * .iml, .settings, आदि सुझाए गए साथ ही पोम को हटाने गया था, लेकिन यह है कि आवश्यक IMHO नहीं है।
  • फिर IntelliJ का उपयोग करके प्रोजेक्ट को फिर से बनाएं: फ़ाइल > नया> मौजूदा स्रोतों से प्रोजेक्ट> चरणों का पालन करें। कई प्रोफाइल या (एक ही प्रोजेक्ट) आयात करने के लिए जागरूक न हों।

0

.Idea फ़ोल्डर हटाएँ और IDE बंद करें

आईडीई को फिर से खोलें और उस प्रोजेक्ट को आयात करें जो एक नया आयात करेगा क्योंकि .IDEA फ़ोल्डर हमारे द्वारा पहले हटा दिया गया है

बाहरी पुस्तकालयों मॉड्यूल की जाँच करें और यदि यह आवश्यक निर्भरता के साथ आबाद नहीं है, तो जाँच करें कि क्या IDE में सही जगह दी गई है।


0

एक संभावना भी है जिसका उल्लेख नहीं किया गया था। यदि आप पुस्तकालय से आयात करते हैं com.sun.*। यह भी इस समस्या का कारण होगा।

जब ide में चलाए जाते हैं तो प्रोग्राम काम करते हैं, इन कक्षाओं के कारण com.sun.*सभी jre/libडायरेक्टरी में होते हैं , इसे चलाते समय लोड किया जाएगा। लेकिन जब आप दौड़ते हैं mvn package, तो ये लाइब्रेरी जावा 1.6 के बाद से ओरेकल के प्रतिबंध के कारण सुलभ नहीं होगी (इन पुस्तकालयों को एक तरह से हटा दिया गया था)। इस समस्या को हल करने के लिए, आप जोड़ सकते हैं

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                    <encoding>UTF-8</encoding>
                    <compilerArguments>
                        <verbose />
                        <bootclasspath>C:/Program Files/Java/jdk1.8.0_161/jre/lib/rt.jar</bootclasspath>
                    </compilerArguments>
                </configuration>
            </plugin>
        </plugins>
    </build>

आप के साथ अपने रास्ते के साथ cootclasspath को बदलने के लिए याद रखें rt.jar

आप Access restriction: The type XXX is not accessible due to restriction on required libraryऔर अधिक विवरण खोज सकते हैं ।


0

यदि गलत तरीके से कॉन्फ़िगर किए गए मॉड्यूल हैं तो वे इन चरणों को करते हैं:

  • प्रोजेक्ट सेटिंग्स पर जाएं
  • मॉड्यूल पर जाएं
  • ऐसे मॉड्यूल हटाएं जो वहां नहीं होने चाहिए

0
  1. मावेन टैब से + क्लिक करें और pom.xml चुनें
  2. मावेन टैब से डाउनलोड स्रोत और प्रलेखन पर क्लिक करें
  3. प्रोजेक्ट संरचना पर (जहाँ आप प्रोजेक्ट फ़ाइलें / निर्देशिकाएँ देख सकते हैं) ठीक उस प्रोजेक्ट पर क्लिक करें जिसे आप बनाने और मॉड्यूल प्रोजेक्ट नाम चुनने का प्रयास कर रहे हैं।
  4. टैब रन से- कॉन्फ़िगरेशन जोड़ें + एप्लिकेशन जोड़ें और नीचे दिए गए फ़ील्ड भरें: i। मुख्य वर्ग- प्रोजेक्ट टैब से मैन्युअल रूप से चुनें मुख्य वर्ग ii। मॉड्यूल के classpath का उपयोग करें - आवेदन नाम का चयन करें iii। छोटा कमांड लाइन - क्लासपैथ फ़ाइल
  5. अब बस ऐप चलाएं।

0

मेरे मामले में समस्या अलग प्रोजेक्ट जावा एसडीके संस्करण में थी। जब मैं टर्मिनल से परियोजना का निर्माण कर रहा था, मावेन ने जावा 8 का उपयोग किया था, और जब मैं आईडीईए से निर्माण कर रहा था, तो उसने जावा 11 का उपयोग किया।

फ़ाइल> प्रोजेक्ट स्ट्रक्चर पर जाएं ... और प्रोजेक्ट सेटिंग्स में प्रोजेक्ट एसडीके को उस संस्करण पर सेट करें जिसकी आपको आवश्यकता है।


0

मेरे लिए समस्या यह थी कि मुझे IntelliJ Java Compiler सेटिंग में Ajc compiler चुना गया था । एक बार जब मैंने इसे जवाक में बदल दिया तो सबकुछ ठीक हो गया।


0

मेरे लिए मैक में, मैंने अपने कंप्यूटर से Intellij Idea Appication को हटाकर और ~ / लाइब्रेरी / एप्लिकेशन समर्थन / JetBrains / IntelliJIdea2020.1 ~ / लाइब्रेरी / कैश / JetBrains / IntelliJIdea2020.1 में कैश फ़ाइलों को हटाकर इसे हल किया।

फिर इसे फिर से स्थापित करें, मेरी परियोजना खोलें, और इसे सफलतापूर्वक बनाएं!


0

मैंने उसी समस्या का सामना किया। मैं mvn clean packageटर्मिनल में कमांड को सफलतापूर्वक चला सकता हूं लेकिन IntellJ से चलाने या निर्माण करने में विफल रहता हूं। मैंने निम्नलिखित कार्य किए लेकिन वे सभी विफल रहे।

  • अमान्य कैश
  • भागो mvn clean packageया mvn clean packageटर्मिनल में
  • इंटेलीज के मावेन कॉन्फ़िगरेशन में 'ऑटोलोड स्नैपशॉट्स' के लिए चिह्नित
  • सिनकोर्नाइज या रिइम्पोर्ट
  • सभी IntellJ संबंधित फ़ाइलें जैसे .idea और reimport प्रोजेक्ट हटाएं
  • सभी निर्भरता फ़ाइलों को निकालें और फिर चलाएँ mvn clean package
  • जावा संस्करण स्विच करें या IntellJ में एम्बेडेड जावा का उपयोग करें
  • Daud mvn idea:idea
  • मावेन होम बदलें
  • मॉड्यूल टैब में स्रोत के रूप में src निर्देशिका को चिह्नित करें

आखिरी काम जो मैंने किया था: परियोजना में .idea और .iml को हटा दें, सभी निर्भरता फ़ाइलों को हटा दें और फिर कंप्यूटर से IntellJ को हटा दें। IntellJ के बाद मेरी परियोजना सफलतापूर्वक बनी। काश इसके हल के लिए मेरे पास बेहतर तरीका हो।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.