"मैवेन प्रोजेक्ट को अपडेट करना" त्रुटि को कैसे ठीक करें। असमर्थित IClasspathEntry तरह = 4?


412

मैंने एसटीएस में मावेन परियोजना का आयात किया है, जब मुझे अपडेट अपडेट परियोजना मिलती है, जो मुझे मिलती है:

"Updating Maven Project". Unsupported IClasspathEntry kind=4

क्या इसके आसपास कोई कार्य है?


क्या कमांड लाइन पर एक निर्माण कार्य होता है? कौन सा मावेन संस्करण?
खमरबाईस

मेरे पास एक ही मुद्दा है और मैं इस जवाब से इनकार नहीं कर पा रहा हूं, आप कृपया stackoverflow.com/questions/12049566/…
हेमंत मेटालिया

जवाबों:


613

यह समस्या m2e 1.5.0 में तय की गई है जो ग्रहण केपलर (4.3) और लूना (4.4) के लिए उपलब्ध है

कृपया https://bugs.eclipse.org/bugs/show_bug.cgi?id=374332#B14 देखें

समस्या इस तथ्य के कारण है कि एसटीएस (स्प्रिंग आईडीई / ग्रहण), साथ ही ग्रहण और अन्य ग्रहण आधारित आईडीई, एम 2 (क्लिपस) प्लगइन का उपयोग करते हैं, लेकिन यह ग्रहण: ग्रहण संभवतः परियोजना पर चलाया गया है। जब m2e एक "var" .classpath प्रविष्टि का सामना करता है, तो यह इस त्रुटि को फेंकता है।

अद्यतन साइटें निम्न url पर निर्दिष्ट की गई हैं:
http://eclipse.org/m2e/m2e-downloads.html

यदि आप किसी भी कारण से m2e 1.5.0 का उपयोग नहीं कर सकते हैं, तो:

  1. प्रोजेक्ट के लिए मावेन प्रकृति को अक्षम करें (राइट-क्लिक मेनू के माध्यम से)

  2. चलाएँ mvn eclipse:clean(जब आपकी परियोजना एसटीएस / ग्रहण में खुली हो)। समय के आधार पर, आपको मावेन प्रकृति को फिर से सक्षम करने से पहले परियोजना पर एक ताज़ा या दो करने की आवश्यकता हो सकती है। आपको यह देखने में सक्षम होना चाहिए कि आपकी परियोजना ने मावेन प्रकृति को खो दिया है। ( eclipse:cleanलक्ष्य केवल और .project, .classpathऔर .settings/फ़ाइलों / निर्देशिकाओं को हटा देता है । आप केवल उन फ़ाइलों को हटा सकते हैं (फिर से जब परियोजना चल रही है, बजाय चल रही है mvn eclipse:clean)

  3. मावेन प्रकृति को पुनः सक्षम करें।
    (ज्यादातर समय, यह पैकेज एक्सप्लोरर फलक में प्रश्न पर राइट-क्लिक करके किया जा सकता है, और फिर 'कॉन्फ़िगर करें' -> 'मेवेन प्रोजेक्ट में कनवर्ट करें' को चुनकर)


3
मुझे इसे काम करने के लिए दो बार प्रयास करना पड़ा। पहली बार मैंने इसे "var" crept में .classpath फ़ाइल में वापस लाने की कोशिश की। मैंने mvan ग्रहण के साथ फ़ाइलों को फिर से बनाया: ग्रहण और फिर से कोशिश की। इसने दूसरी बार काम किया।
दीपक बाला

1
यह .classpath फ़ाइल को मैन्युअल रूप से निकालने के लिए सभी सेट विशेषता के classpathentryसाथ मदद कर सकता kindहै var
Puigcerber

31
इसने मेरे लिए काम किया, लेकिन मुझे मावन प्रकृति को फिर से सक्षम करने से पहले एक अतिरिक्त "रिफ्रेश" करना पड़ा (वास्तव में मेरे मामले में "मावेन प्रोजेक्ट के रूप में कॉन्फ़िगर करें" जैसा कि यह एक मुखर परियोजना थी)
स्टुअर्ट वाट


2
मुझे लगता है कि आप ग्रहण संस्करणों को गलत मानते हैं: ग्रहण केपलर 4.3 है और लूना 4.4 है
वोगेला

63
  1. अपने प्रोजेक्ट पर राइट-क्लिक करें, Maven -> Remove Maven Nature चुनें।

  2. आपको टर्मिनल खोलें, अपने प्रोजेक्ट फ़ोल्डर में जाएं और करें mvn eclipse:clean

  3. अपने प्रोजेक्ट पर राइट क्लिक करें और "कॉन्फ़िगर करें -> मावेन प्रोजेक्ट में बदलें" चुनें।

अब आपको "असमर्थित IClasspathEntry तरह = 4 ग्रहण स्केल" गायब हो गया।


5
इसके लिए धन्यवाद। बस दूसरों के लिए एक नोट, यह है mvn eclipse:clean, नहीं mvn clean(मैं करीब ध्यान नहीं देकर मूर्ख बना)।
जिन किम

ठीक है। मैंने केपलर में प्रोजेक्ट आयात करने के बाद, cmd लाइन से src / java बनाया है। यही हाल था।
Zbyszek

43

कभी-कभी, मावेन परियोजना को फिर से आयात करने से भी काम नहीं चलेगा। ग्रहण में परियोजना को सही ढंग से अद्यतन करना एक नियतात्मक प्रक्रिया नहीं है। केवल 100% सुरक्षित सुरक्षित प्रक्रिया मुझे मिली है:

  1. मावेन प्रकृति को अक्षम करें, चलाएं mvn eclipse:clean, पुनरारंभ करें, अपनी उंगलियों को पार करें और 3 बार प्रार्थना करें
  2. यदि यह काम नहीं करेगा, तो परियोजना को हटा दें, चलाएं mvn eclipse:clean, फिर से ताज़ा करें, प्रार्थना करें और बल का उपयोग करें
  3. यदि यह अभी भी काम नहीं करता है, तो ग्रहण को पुनः आरंभ करें , या आपके कंप्यूटर को भी बेहतर करें । रिबूट की प्रतीक्षा करते समय, आप अपने कर्म को ठीक करने के लिए एक यादृच्छिक दान कर सकते हैं । चरण 2 को दोहराएं और प्रार्थना करना और अपने क्रोध को नियंत्रित करना न भूलें। क्रोध से घृणा होती है। घृणा से दुख होता है।
  4. इस धागे में पोस्ट किए गए अन्य सभी उत्तर आज़माएं। आपको देने से पहले कम से कम 3 बार उन सभी के लिए प्रयास करने की आवश्यकता हो सकती है।
  5. अपने कंप्यूटर को प्रारूपित करें, ग्रहण और मावेन को फिर से स्थापित करें । अब और प्रार्थना करने की आवश्यकता नहीं है, सभी देवता वैसे भी आपसे घृणा करते हैं
  6. अपनी गिट परियोजना को हटाएं, उस भौतिक ड्राइव को जलाएं जो रिमोट रिपॉजिटरी को संग्रहीत करती है, और अपनी परियोजना को खरोंच से लिखें।
  7. एक टाइम मशीन ढूंढें , अतीत की यात्रा करें और जावा से बचने के लिए खुद को दूसरे, गैर-प्रोग्रामिंग कैरियर या कम से कम पालन करने के लिए मनाएं

3
यह सब करने की कोशिश की, "Maven निर्भरता प्रबंधन समस्या" या "NullPointerException"
srirachapills

1
शांत रखें और पूर्ववत दोहराएं रखें
yannicuLar

1
जावा ने कभी आपका क्या किया?
ईविल वाशिंग मशीन

2
@EvilWashingMachine वास्तव में बुरा कुछ भी नहीं है .. बस एक बहाना बनाने की कोशिश की एक टाइम मशीन का उपयोग करने का औचित्य साबित करने के लिए
yannicuLar

1
शांत रहें और विम + टर्मिनल का उपयोग करें
प्रतीक सिंघल

12
  1. सुनिश्चित करें कि आपके द्वारा चलाए जा रहे m2e (क्लिपसी) प्लगइन का संस्करण कम से कम 1.1.0 है

  2. क्लोज्ड मावेन प्रोजेक्ट - राइट क्लिक "क्लोज प्रोजेक्ट"

  3. मैनुअल ने .classpath फ़ाइल में तरह = "var" के साथ सभी क्लासपैथेंट्री को हटा दिया
  4. ओपन प्रोजेक्ट

या

  1. मावेन परियोजना को हटा दें
  2. मैनुअल रमेव .classpath 4 रिइम्पोर्ट प्रोजेक्ट

यह त्रुटि STS के साथ नहीं है जैसा @Marco द्वारा कहा गया है। यह सामान्य एम 2 ई समस्या है। Maven प्रकृति को अक्षम करें, .classpath फ़ाइल हटाएं, Maven प्रकृति को पुनः सक्षम करें।
सब्ज़ूम

6

आपने कोशिश की है:

  1. यदि आपके पास ग्रहण 4 में आयात परियोजना है, तो कृपया इसे हटा दें।
  2. मावेन शान्ति में, रन: मवन ग्रहण: स्वच्छ
  3. ग्रहण 4 में: फ़ाइल -> आयात -> मावेन -> मौजूदा मावेन परियोजनाएं

1
ऐसा करने से पहले, सुनिश्चित करें कि पहले प्रोजेक्ट पर मावेन एक्लिप्स प्लगइन नहीं चलाया गया है। mvan ग्रहण: जरूरत पड़ने पर स्वच्छ इसे ठीक करेगा।
ACHoice

3
इसने जूनो में मेरे लिए बेहतर काम किया। मैंने एक्लिप्स में प्रोजेक्ट्स को हटा दिया, और फिर से आयात किया।
cs94njw

ग्रहण केपलर में कोई प्रभाव नहीं
Zbyszek

3

अन्य सभी उत्तर देखकर। मैंने अपने लिए एक सरल रास्ता खोज लिया।

मैंने अभी .classpath (ग्रहण के साथ संपादन) में सभी लाइनों को हटा दिया है जिसमें एक var और इस्तेमाल किया maven -> अपडेट प्रोजेक्ट बिना किसी त्रुटि के है।


यह मेरे लिए काम करता है, एक "जार" लाइन को हटाने की भी जरूरत है जिसमें एक मावेन जार होता है।
dwjohnston

2

यदि क्लोवर के साथ कोड कवरेज के लिए लगाए गए प्रोजेक्ट पर अपडेट कमांड का उपयोग किया जाता है, तो यह त्रुटि भी डाली गई है।

इस परिदृश्य में हल करने के लिए: प्रोजेक्ट फ़ोल्डर जिसे आप अद्यतन करना चाहते हैं, उसे अन-इंस्ट्रूमेंट करें। मावेन अपडेट को फिर से कोड कवरेज के लिए इंस्ट्रूमेंट चलाएं।


0

मैंने मार्को के कदमों की कोशिश की लेकिन कोई किस्मत नहीं। इसके बजाय यदि आपको बस उसके द्वारा दिए गए लिंक से नवीनतम m2e प्लगइन मिलता है और प्रत्येक प्रोजेक्ट पर एक-एक राइट क्लिक करके -> Maven -> अपडेट निर्भरताएं अभी भी त्रुटि पॉप अप होती है, लेकिन समस्या हल हो गई है। यह कहना है कि मार्करों के दृश्य में चेतावनी गायब हो जाती है। स्प्रिंगस्रोस टूल सूट (एसटीएस) में कुछ परियोजनाओं को आयात करने के बाद मुझे इस मुद्दे का सामना करना पड़ा। जब मैं अपने ग्रहण जूनो संस्थापन में लौटा तो चेतावनी प्रदर्शित कर रहे थे। यह देखकर कि मेरे पास m2e 1.1 पहले से ही स्थापित है मैंने बिना किसी लाभ के मार्को के कदमों की कोशिश की। हालांकि नवीनतम संस्करण को प्राप्त करना निश्चित है।


1
धन्यवाद, मेरे जवाब पर जोर दिया कि आपको नवीनतम संस्करण मिलना चाहिए, न कि केवल 1.1.0 जो नवीनतम संस्करण के समय था।
मार्को

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

0

मुझे केवलर के साथ काम करने के लिए मवन एक्लिप्स: क्लीन आदि नहीं मिला।

हालाँकि मैंने अपने ग्रहण वर्गपथ में बाहरी जारों का उपयोग करने के लिए चर बनाने और विस्तारित किए। यह मेरे .classpath में बिना किसी var के परिलक्षित होता था।

इससे समस्या ठीक हो गई। मैं मावेन अपडेट करने में सक्षम था।


0

यह समस्या ( https://bugs.eclipse.org/394042 ) m2e 1.5.0 में तय की गई है जो इस P2 रेपो से ग्रहण केपलर और लूना के लिए उपलब्ध है:

http://download.eclipse.org/technology/m2e/releases/1.5

यदि आप भी m2e-wtp का उपयोग करते हैं, तो आपको m2e-wtp 1.1.0 भी इंस्टॉल करना होगा:

http://download.eclipse.org/m2e-wtp/releases/luna/1.1


फ़र्ज़ी लिंक की पैदावार होती है "हमें खेद है, पृष्ठ या फ़ाइल नहीं मिल सकती है। यहाँ कुछ कारण दिए गए हैं ..."
जारोस्लाव ज़ारूबा

कारण # 1 यहां लागू होता है: यह एक ग्रहण अपडेट साइट / पी 2 रिपॉजिटरी है; आपको इसे ग्रहण से देखना होगा ( help.eclipse.org/luna/index.jsp?topic=//… ) देखें ।
फ्रेड ब्रिकन

0

केप्लर से लूना में अपग्रेड करना मेरे लिए काम कर गया।

मैंने जावा 1.8 समर्थन के लिए कुछ घटकों को जोड़ा था। ऐसा लगता है कि वे नहीं हैं जहां मैं संगत हूं या मैं गलत लोगों को मिलाऊंगा। यह वास्तव में बहुत सारी समस्याओं का कारण बना। सिस्टम की त्रुटियों को अपडेट करने की कोशिश कर रहा है क्योंकि वे कुछ निर्भरता को पूरा नहीं कर सकते हैं। मावेन उन्नयन काम नहीं किया। बहुत सारी चीजों की कोशिश की।

इसलिए, यदि अपग्रेड से बचने का कोई कारण नहीं है तो केवल avalilable सॉफ़्टवेयर साइट्स (Luna http://download.eclipse.org/releases/luna/ ) पर " लाइना रिपॉजिटरी " जोड़ें और "अपडेट की जाँच करें"। एक ही संस्करण के साथ सभी घटकों को रखना बेहतर है और कुछ अच्छी नई विशेषताएं हैं।


0

मैंने यहां और इसी तरह के सवालों पर बताए गए सभी चरणों की कोशिश की, लेकिन इस समस्या को हल नहीं कर सका। मैं न तो समस्या को हल कर सका और न ही अपने m2eclipse को अपडेट कर सका। इसलिए मैंने एक्लिप्स लूना स्थापित किया और इसने मेरी समस्या को हल कर दिया ... हालांकि इसका मतलब है कि मुझे अपने कार्यक्षेत्र में सभी वातावरण को कॉन्फ़िगर करने के लिए लगभग 45 मिनट खर्च करने पड़ते हैं।


0

कोशिश करें कि एमवाय क्लीन इंक्लेयशन ग्रहण करें: ग्रहण -डॉप्टवर्सन = डॉस कमांड प्रॉम्प्ट पर 2.0 कमांड। आप का सुझाव क्योंकि, यह मेरे लिए काम किया !!


0

मैं M2E 1.4.x के साथ ग्रहण 4.3.2 (केपलर) का उपयोग कर रहा हूं और इस समस्या को कई बार महसूस किया है!

मेरे मामले में "मावन एक्लिप्स: एक्लिप्स" कमांड भी चेकस्टाइल, पीएमडी और फाइंडबग्स कॉन्फ़िगरेशन को उत्पन्न करता है, इसलिए "मावन एक्लिप्स: क्लीन" मेरी मदद नहीं करता है क्योंकि यह उन सभी कॉन्फिग फाइलों को फिर से ड्रॉप करता है।

मेरे लिए सबसे अच्छा समाधान सभी ".classpath" फ़ाइलों को हटाना था:

find . -name ".classpath" -delete

और बाद में ग्रहण में परियोजना का आयात करें।


0

परियोजना को आयात करने से पहले, इसे ग्रहण परियोजना मवन ग्रहण में परिवर्तित किया जाना चाहिए: ग्रहण तब मुझे निम्नलिखित त्रुटि मिली। के दौरान एक आंतरिक त्रुटि हुई: "मावेन परियोजनाओं को आयात करना"। असमर्थित IClasspathEntry तरह = 4

मान कहाँ है = "var" जो M2E नहीं पहचानता है और इसलिए त्रुटि फेंकता है।

अब इसे टाइप करें। mvan ग्रहण: स्वच्छ

अब परियोजना को ग्रहण या पुनः आयात में ताज़ा करें।

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