ग्रहण परियोजना में लापता मावेन निर्भरता


108

हमारे पास आश्रितों को हल करने के लिए मावेन के साथ एक परियोजना स्थापित की गई है। यह आमतौर पर ठीक काम करता है, लेकिन अब मैं इसे एक नए पीसी पर संकलित करने और चलाने की कोशिश कर रहा हूं और मुझे ग्रहण में लापता निर्भरता के साथ समस्या है।

क्या मज़ेदार है कि अगर मैं कंसोल में या ग्रहण में "mvan पैकेज" चलाता हूं, तो यह ठीक काम करता है और यहां तक ​​कि सभी आवश्यक जार युक्त युद्ध भी पैदा करता है। केवल ग्रहण से शिकायत होती है "परियोजना का निर्माण नहीं हुआ था क्योंकि इसका निर्माण पथ अधूरा है। org.slf4j.Logger ..." के लिए वर्ग फ़ाइल नहीं मिल सकती है। यदि मैं प्रोजेक्ट की तुलना कुछ अन्य कंप्यूटर (जहाँ प्रोजेक्ट ठीक काम करता है) से करता हूँ, तो मैं देखता हूँ कि ग्रहण में "मावेन निर्भरता" सूची के तहत काफी कुछ पुस्तकालय गायब हैं। अंततः वे पैक किए गए युद्ध में हैं और उन्हें भंडार फ़ोल्डर के तहत भी पाया जा सकता है।

तो, जार-एस वहाँ हैं बस ग्रहण उन सभी को "मावेन निर्भरता" के तहत सूचीबद्ध नहीं करेगा। मैं क्या कर सकता हूँ?

कंप्यूटर 64 बिट जावा और ग्रहण के साथ विंडोज 7 पर चल रहा है।


क्या यह jira.codehaus.org/browse/MNG-2045 की तरह एक स्कोप इश्यू है ?
VonC

1
यह उत्तर पोस्ट करने के लायक नहीं है, लेकिन भविष्य में इसे पढ़ने वाले किसी भी व्यक्ति के लिए, ऐसा लगता है कि आपको वाइल्डकार्ड के बिना कम से कम तीन वर्ण लिखने की आवश्यकता है। उदाहरण के लिए "t" या "to" कोई परिणाम नहीं दिखाएगा, लेकिन "tom" होगा। मानो या न मानो, मैंने इसे महसूस करने से पहले लगभग एक घंटे तक अलग-अलग कारणों की खोज की।
क्रिस नेव

जवाबों:


117

खैर, मैंने यहां पोस्ट की गई सभी चीजों की कोशिश की, दुर्भाग्य से मेरे मामले में काम नहीं करता है। इसलिए, विभिन्न संयोजनों को आजमाकर मैं इस समस्या से निजात पाया।

1) अपने ग्रहण की परियोजना के मूल में .classpath फ़ाइल खोलें ।

2) फ़ाइल में निम्नलिखित प्रविष्टि डालें:

<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
            <attribute name="org.eclipse.jst.component.nondependency" value=""/>
        </attributes>
</classpathentry> 

फिर, ग्रहण पर अपनी परियोजना का पुनर्निर्माण करें (प्रोजेक्ट-> क्लीन-बिल्ड)। अब आप लायब्रेरी टैब में जावा बिल्ड पथ पर जाँच कर सकते हैं जिसमें मावेन निर्भरताएँ शामिल हैं: यहां छवि विवरण दर्ज करें


3
यह पहली चीज है जिसे हर किसी को आजमाना चाहिए। .Classpath फ़ाइल खोलें जो नोटपैड के साथ आपकी प्रोजेक्ट डायरेक्टरी में होगी और बताई गई लाइनों को जोड़कर आपके प्रोजेक्ट को रिफ्रेश करेगी।
अमित कुमार

9
यह काम किया जहां बाकी सब विफल रहा। लेकिन क्या मुझे अपने बनाए हर प्रोजेक्ट के लिए ऐसा करना होगा? यह अपने आप काम क्यों नहीं करता है? असली समस्या क्या है?
येअहहहह..हमफ हम्फ

आह, यह अभी भी m2e 1.6.2.20150902-002 में टूट गया है। मैक ओएस एक्स / जेडडीके 1.8 पर एक ताजा वेनिला एक्लिप्स इंस्टॉल के साथ परीक्षण किया गया। जावा डेवलपर्स संस्करण के लिए ग्रहण आईडीई: मार्स .2 रिलीज़ (4.5.2) बिल्ड आईडी: 20160218-0600 मुझे आश्चर्य है कि क्या इस प्लगइन को ठीक से काम करने के लिए ग्रहण जावा ईई की आवश्यकता है?
मैट गेसेल

1
यह उत्तर पहले वाला होना चाहिए। केवल वही काम करता है; ;-) thx
मैनुअल मैनहर्ट

1
जादू! अभी भी ग्रहण के लिए वैध है 4.4.2
छंद

89

समस्या सुलझ गयी!

मैं नहीं जानता कि वास्तव में इसका हल क्या है, लेकिन मैंने ग्रहण में 4 चीजें कीं:

  • विंडो-> प्राथमिकताएं: मावेन-> प्रतिष्ठान: वैश्विक सेटिंग्स -> खुली फ़ाइल और हार्डकोडेड लोकल रिपॉजिटरी
  • परियोजना> साफ
  • प्रोजेक्ट पर राइट क्लिक करें: Maven-> अपडेट निर्भरताएँ
  • प्रोजेक्ट पर राइट क्लिक करें: Maven-> प्रोजेक्ट कॉन्फ़िगरेशन अपडेट करें

मुझे लगता है कि यह सही दो के बाद से अद्यतन निर्भरता थी कोई बदलाव नहीं थे।


2
मुझे पता है कि "प्रोजेक्ट-> क्लीन" और मैंने इसे आज़माया है, लेकिन इसने पहली बार मदद नहीं की।
होस्टेन नोविच

7
यह अंतिम बिंदु था। प्रोजेक्ट कॉन्फ़िगरेशन को अपडेट करने से आपके प्रोजेक्ट में "मावेन डिपेंडेंसीज़" लाइब्रेरी जुड़ जाएगी।
एडुआर्ड विर्च

2
FYI करें, मुझे सबसे पहले अपने प्रोजेक्ट पर राइट क्लिक करना है, कन्फिगर और "Maven प्रोजेक्ट में कन्वर्ट" पर जाना है।
duma

2
एडवर्ड विर्च के उत्तर पर विस्तार करते हुए, मुझे मावेन-> अपडेट प्रोजेक्ट ... विंडो में "फोर्स अपडेट ऑफ स्नैपशॉट्स / रिलीव्स" बॉक्स की भी जांच करनी थी। मेरी लापता कलाकृति एक स्नैपशॉट थी और किसी भी तरह इसे मजबूर किए बिना अच्छी तरह से अपडेट नहीं हो रही थी।
evaldeslacasa

1
मुझे अपनी '.m2' निर्देशिका के अंतर्गत उपयोगकर्ता सेटिंग 'सेटिंग' xml 'को बदलना पड़ा। इसे पहले मावेन इंस्‍टॉल डायर के तहत एक में सेट किया गया था।
जैक स्ट्रॉ

34

मैं ग्रहण के लिए भी नया हूं, और मुझे एक ऐसी ही समस्या हो रही है जहां ग्रहण सिर्फ एक आयात विवरण को नहीं पहचानेगा, भले ही निर्भरता को सभी संकेत सफलतापूर्वक डाउनलोड किए गए हों।

आपको जांचना चाहिए कि आपकी निर्भरता फ़ाइल वास्तव में कमांड लाइन पर जाकर डाउनलोड की गई है या नहीं

mvn dependency:tree

यदि आप अपना पैकेज वहां देखते हैं, तो लेकिन ग्रहण इसे स्वीकार नहीं करता है, वह चीज जो मेरे लिए काम करती है (कभी-कभी) टर्मिनल पर जाने के लिए, प्रोजेक्ट फ़ोल्डर में सीडी, और प्रकार

mvn eclipse:clean फिर mvn eclipse:eclipse

अंत में ग्रहण में ताज़ा परियोजना

मुझे नहीं पता कि यह क्यों काम करता है, और कभी-कभी यह एक बार काम नहीं करता है, फिर इसे फिर से करना काम करता है ... इसलिए एक कोशिश के लायक है!


इसने मुझे यह दिखाते हुए सही दिशा में इंगित किया कि मेरी सेटिंग्स के साथ समस्याएँ थीं। xml फ़ाइल! शुक्रिया, @rogueleaderr!
स्लैश

हाँ, इसने मेरे दोस्त के लिए काम किया, उसकी सभी समस्याओं और सिरदर्द को हल किया। दुर्भाग्य से मेरे लिए काम नहीं किया।
ज़ैक ज़िलिक

इसने मेरे लिए भी काम किया लेकिन क्या कोई बता सकता है कि घटना के पीछे क्या हुआ है ??
YouAreAwesome

31

मेरा प्रोजेक्ट अभी खराब हो गया था। यहाँ मैंने इसे ग्रहण इंडिगो x64 (J2EE 3.7.3) के लिए कैसे तय किया है:

  1. मेरी POM फ़ाइल हटा दी गई (पाठ्यक्रम का बैकअप)।
  2. प्रोजेक्ट संदर्भ मेनू > मावेन > मावेन प्रकृति को अक्षम करें
  3. प्रोजेक्ट हटा दिया गया (लेकिन डिस्क पर सामग्री नहीं)।
  4. आयात > सामान्य > मौजूदा परियोजना के रूप में पुनः आयात
  5. परियोजना संदर्भ मेनू > कॉन्फ़िगर > Maven परियोजना के लिए परिवर्तन करते हैं ...
  6. मावेन जादूगर से चूक स्वीकार करें।
  7. अपने समर्थित POM के साथ POM को अधिलेखित करें। (अब आपके पास मावेन डिपेंडेंसी फ़ोल्डर है )।
  8. अच्छे उपाय के लिए मावेन अपडेट / क्लीन।

आशा है कि किसी की मदद करता है। :)


यह मेरी मदद करता है! मुझे नहीं पता कि क्या गलत है, लेकिन मैं 64-बिट जूनो / स्प्रिंग्स 3 का उपयोग कर रहा हूं और यह हमेशा मेरे मावेन प्रोजेक्ट्स को सही ढंग से आयात करने में विफल रहता है। यदि मैं एक नियमित परियोजना के रूप में जांच करता हूं, तो मेरे POM का नाम बदलें, फिर चरण 5 से आपके निर्देशों का पालन करें, यह काम करता है। अन्यथा, मैं जो कुछ भी करने की कोशिश करता हूं वह मावेन निर्भरता को कमांड-लाइन से अलग मेरी परियोजना में जोड़ा जाएगा mvn eclipse:eclipseजो कि बहुत ही भयानक है।
19

मैंने ऐसा किया है, लेकिन मेरे पास अभी भी मावेन निर्भरता फ़ोल्डर नहीं है। यहाँ मेरी pom.xml फ़ाइल है और मुझे लगता है कि यही वजह है कि मुझे यह समस्या है: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>antlr.tuto.calco</groupId> <artifactId>CalculatriceAntlr</artifactId> <version>0.0.1-SNAPSHOT</version> </project>
Anatch

मैं वास्तव में नहीं जानता कि समस्या कहां है, लेकिन मैं ऊपर दिए गए चरणों का पालन कर रहा हूं और वास्तव में ठीक काम कर रहा हूं। यह कक्षा नहीं मिली, xml dtd नहीं मिली जैसे त्रुटि का कारण बनता है। लेकिन अब यह हल हो गया है। धन्यवाद दोस्त। वोट दें।
सागर

29

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

SOLUTION: सही ढंग से नहीं बन रही परियोजना में,

  • प्रोजेक्ट पर राइट-क्लिक करें और गुण चुनें, और फिर मावेन।

  • बॉक्स लेबल "सही का निशान हटाएँ कार्यस्थान परियोजनाओं से हल निर्भरता "

  • हिट लागू करें, और फिर ठीक है।

  • अपनी परियोजना पर फिर से राइट-क्लिक करें और Maven-> अपडेट स्नैपशॉट (या अपडेट निर्भरता) करें

और जब आपके प्रोजेक्ट का पुन: निर्माण होता है तो आपकी त्रुटियां दूर होनी चाहिए (यदि आपके पास ऑटो-बिल्ड सक्षम है)।


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

1
अरे, मावेन-> अपडेट स्नैपशॉट (या अपडेट निर्भरता) जैसी कोई चीज नहीं है। अगर मैं राइट क्लिक करता हूं, तो कोई मावेन विकल्प नहीं है? आपने जो वर्णन किया है वह कहाँ स्थित है? मैं देख रहा हूं, लेकिन आपके द्वारा लागू किए जाने के बाद विवरण नहीं मिल सकता है
DarioBB

1
@DarioBB यह उत्तर लगभग 5 साल पुराना है। मैंने ग्रहण में एक वर्ष से अधिक समय तक काम नहीं किया है। मुझे पता नहीं है कि यह विकल्प अभी भी उपलब्ध है या नहीं। मैं सबसे हाल के संस्करण में नहीं हो सकता।
आइसबॉक्स 13

1
इस समाधान ने मेरे लिए ग्रहण नियॉन में काम किया। मावेन> अपडेट प्रोजेक्ट (अपडेट स्नैपशॉट नहीं) बाद में करें।
इवाना

9

खैर, मैंने यहां पोस्ट की गई सभी चीजों की कोशिश की, दुर्भाग्य से मेरे मामले में काम नहीं करता है। इसलिए, विभिन्न संयोजनों को आजमाकर मैं इस समस्या से निजात पाया।

1) अपने ग्रहण की परियोजना के मूल में .classpath फ़ाइल खोलें ।

2) फ़ाइल में निम्नलिखित प्रविष्टि डालें:

<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
            <attribute name="org.eclipse.jst.component.nondependency" value=""/>
        </attributes>
</classpathentry> 

फिर, ग्रहण पर अपनी परियोजना का पुनर्निर्माण करें (प्रोजेक्ट-> क्लीन-बिल्ड)।


धन्यवाद! इस समाधान ने मेरे लिए सबसे अच्छा काम किया, बस एक सुधार कठिन, मुझे परियोजना को बंद करना और फिर से खोलना पड़ा।
तरुण गुप्ता

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

7

बस अगर किसी ने अन्य सभी विकल्पों की कोशिश की है और आप अभी भी अटके हुए हैं, प्रोजेक्ट फ़ोल्डर पर राइट-क्लिक करने की कोशिश करें, मावेन विकल्प पर जाएं और "एड निर्भरता" बटन पर क्लिक करें। किसी कारण से ग्रहण पहली कोशिश में pom.xml से मैन्युअल रूप से निर्भरता को अद्यतन नहीं कर रहा है ।

मेनू चयन का स्क्रीन शॉट


5

मुझे भी ऐसी ही समस्या का समाधान करना पड़ा था। मैंने इसे Maven-> अपडेट प्रोजेक्ट कॉन्फ़िगरेशन क्रिया चलाकर हल किया


5

मेरे लिए समस्या थी maven सेटिंग नहीं मिल रही है। xml फ़ाइल जो myMavenFolder \ conf में स्थित है ।

मैंने समस्या को ठीक करने के लिए सेटिंग्स के सही स्थान का चयन किया था। ग्रहण से फ़ाइल को फ़ाइल करें:
विंडो -> प्राथमिकताएं -> मैवेन -> उपयोगकर्ता सेटिंग्स

अंत में, हिट लागू करें और अपनी परियोजना को अपडेट करें


4

इसलिए मुझे इस पार्टी में लगभग 4 या 5 साल देर हो गई है, लेकिन हमारे रेपो से खींचने के बाद मेरे पास यह मुद्दा था, और इस थ्रेड से किसी भी अन्य समाधान ने मेरे मामले में इन चेतावनियों / त्रुटियों से छुटकारा पाने के लिए काम नहीं किया।

यह मेरे लिए काम किया:

ग्रहण से विंडो पर जाएं -> प्राथमिकताएं -> मैवेन (विस्तार) -> त्रुटियां / चेतावनी। अंतिम विकल्प में लिखा है "जीवन चक्र विन्यास द्वारा कवर नहीं किया गया प्लगइन निष्पादन" - इस विकल्प के लिए ड्रॉप-डाउन मेनू का उपयोग करें और "अनदेखा करें" को टॉगल करें, फिर लागू करें, फिर ठीक है। (At: मावेन प्रोजेक्ट्स को अपडेट करने की आवश्यकता है "शीघ्र कहना ठीक है)।

आगे की जानकारी:

यह जरूरी नहीं है कि अंतर्निहित मुद्दे (ओं) को "ठीक" करें, और कुछ द्वारा "सर्वोत्तम अभ्यास" के रूप में योग्य नहीं हो सकते हैं, हालांकि इसे इन चेतावनियों को ग्रहण में दिखाई देने से दूर करना चाहिए या आपको कम से कम आगे बढ़ने देना चाहिए। विशेष रूप से - मैं ग्रहण लूना सेवा रिलीज 1 (4.4.1) w / स्प्रिंग डैशबोर्ड और स्प्रिंग आईडीई कोर (3.6.3), और एम 2 (1.5) स्थापित, आर्क लिनक्स और ओपनजेडके 1.7 पर चल रहा था। मैंने अपनी परियोजना को एक मौजूदा मावेन परियोजना के रूप में आयात किया और मौजूदा चेतावनी / त्रुटियों (बाद में उनसे निपटने के लिए) के बारे में चेतावनी देने पर ओके का चयन किया।

दबाएं / निकालें "प्लगइन निष्पादन को कवर नहीं किया गया ..." ग्रहण-मावेन को चेतावनी देता है

(क्षमा करें, मैं कोई डिज़ाइनर नहीं हूं, लेकिन स्पष्टता के लिए जोड़ा गया चित्र है।)


4

मेरे मामले में निम्नलिखित चरणों में काम किया है:

1 ग्रहण पर, वांछित परियोजना मावेन पर राइट क्लिक करें -> मावेन प्रकृति को अक्षम करें

2 फिर राइट क्लिक करें फिर प्रॉपर्टीज पर जाएं । केवल JRE सिस्टम लाइब्रेरी को छोड़कर बाहरी मावेन निर्भरता के हर सबूत को हटा दें।

3 प्रोजेक्ट पर एक बार और राइट क्लिक करें फिर कॉन्फ़िगर करें -> कन्वर्ट को मावेन प्रोजेक्ट पर जाएं


3

ऊपर दिए गए किसी भी समाधान ने मेरे लिए काम नहीं किया, इसलिए यह उत्तर मेरी स्थिति में किसी और के लिए है। मैंने अंततः समस्या को खुद ही पाया, और एक अलग समाधान। Pom.xml फ़ाइल में एक निर्भरता प्रबंधन टैग होता है जो निर्भरता को लपेटता है, और M2Eclipse इस मौजूद होने पर मावेन डिपेंडेंसी फ़ोल्डर को नहीं जोड़ेगा। इसलिए, मैंने इस टैग को हटा दिया, फिर उल्टर जूनियर द्वारा पेश किए गए समाधान को अंजाम दिया, और ग्रहण ने तुरंत गायब फ़ोल्डर को जोड़ दिया!


3

यहाँ कदम है जो मैंने पीछा किया है।
1. ग्रहण से हटाए गए मावेन प्रोजेक्ट।
2. मेरे स्रोत फ़ोल्डर से src और pom के अलावा अन्य सभी फ़ाइल (.setting / .classpath / लक्ष्य) हटा दी गईं ।
3. मावेन परियोजना के रूप में फिर से आयात
4. इसे फिर से बनाएं , आपको मावेन निर्भरता देखने में सक्षम होना चाहिए।


2

मेरा उत्तर @JerylCook के समान है: .classpathएक काम करने वाली मावेन परियोजना में एक और फ़ाइल ढूंढें , अपने बुरे लोगों को उस अच्छे काम करने वाले के रूप में संपादित करें। कुंजी जोड़ना है

<attributes>
    <attribute name="maven.pomderived" value="true"/>
</attributes>

हर में <classpathentry>प्रकार के conऔर src। करने के लिए बदलने के <classpathentry .... />लिए मत भूलना <classpathentry ...>xxx</classpathentry>

आखिर में, मावेन प्रोजेक्ट को अपडेट करें और मावेन में रीइंस्टॉल / रीइंवेस्ट करें।


यह मेरे लिए किया। धन्यवाद।
NuCradle

1

यदि आपके पास Maven -> अपडेट प्रोजेक्ट कॉन्फ़िगरेशन (या जूनो में यह "अपडेट कॉन्फ़िगरेशन ...") करने के बाद "नेस्टेड पथ" त्रुटियां हैं, तो आपका बिल्ड पथ गलत है।

राइट-क्लिक प्रोजेक्ट -> बिल्ड पथ -> बिल्ड पथ कॉन्फ़िगर करें

सुनिश्चित करें कि उस स्तर पर केवल '/ src' और निर्देशिकाएं शामिल हैं। यदि आपके पास 's / src' है और '/ src / main / Resources' मौजूद है, तो यह गलत है। दूसरा संसाधन ('/ src / main / resource') पहले ('/ src') के तहत "नेस्टेड" है जो संसाधन आयात करने में आपकी असमर्थता का कारण बन रहा है, क्योंकि यह ग्रहण को मावेन निर्भरता को देखने से रोकता है।


1

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

इसे हल करने के लिए मुझे जो करना था वह चुन लिया गया Run As... -> Maven build...और लक्ष्य के तहत मैंने प्रवेश किया dependency:go-offlineऔर भाग गया।

फिर मैंने प्रोजेक्ट पर राइट क्लिक किया Maven -> Update Project...और उस विशिष्ट प्रोजेक्ट को चुना और अपडेट किया।

इसने अंततः इसे स्रोत फ़ोल्डर बनाने और आयात समाप्त करने की अनुमति दी।


1

मैं 1) त्रुटि को हल कर सकता था (राइट आपके maven प्रोजेक्ट) -> maven -> maven इंस्टॉल

सफल स्थापना के बाद

2) राइट क्लिक (आपका maven प्रोजेक्ट) -> maven -> अपडेट प्रोजेक्ट। और मावेन की सारी त्रुटि हल हो गई!


1

मेरे लिए यह पर्याप्त था। एक buildCommand (org.eclipse.m2e.core.maven2Builder) और एक प्रकृति (org.eclipse.m2e.core.maven2Nature) को .project फ़ाइल में इस तरह जोड़ें: जैसे।

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
    <name>iText</name>
    <comment></comment>
    <projects>
    </projects>
    <buildSpec>
        <buildCommand>
            <name>org.eclipse.jdt.core.javabuilder</name>
            <arguments>
            </arguments>
        </buildCommand>
        <buildCommand>
            <name>org.eclipse.m2e.core.maven2Builder</name>
            <arguments>
            </arguments>
        </buildCommand>
    </buildSpec>
    <natures>
        <nature>org.eclipse.jdt.core.javanature</nature>
        <nature>org.eclipse.m2e.core.maven2Nature</nature>
    </natures>
</projectDescription>

और मैंने किया यहां छवि विवरण दर्ज करें


1

इस तरह मैंने इसे हल किया

  • विंडो-> प्राथमिकताएं: मावेन-> उपयोगकर्ता सेटिंग्स (जिसके परिणामस्वरूप विंडो में "ओपन फाइल" पर क्लिक करें, या बस सेटिंग्स को संपादित करें। नोटपैड जैसे बाहरी पाठ संपादक के साथ xml) सुनिश्चित करें कि LocalRepository (जो इस विंडो में प्रदर्शित हो) सही है। मेरी फाइल में एक टाइपो था।
  • एक बार जब आप सेटिंग्स को ठीक कर लेते हैं। xml, अपडेट सेटिंग्स पर क्लिक करें, जो कि इसी वरीयताएँ-> मावेन-> उपयोगकर्ता सेटिंग्स स्क्रीन पर है।

अब पुनर्निर्माण करें, और यह नवीनतम JAR को सही स्थान पर स्थापित करेगा।


1

मेरे पास एक समान मुद्दा था और मैंने इस पोस्ट में सभी उत्तरों की कोशिश की है। इस मुद्दे को हल करने के लिए मैं सबसे करीब आया था, जोसेफ लस्ट और पॉल क्रीज के समाधान के संयोजन से। मैंने प्रोजेक्ट को हटाने और फिर से जोड़ने के बाद बैक अप pom.xml फ़ाइल जोड़ी, और कुछ भी नहीं दिखाया जब तक कि मैंने pom.xml में निर्भरता प्रबंधन टैग को नहीं हटाया और जादुई रूप से निर्भरता फ़ोल्डर वहाँ था।

हालाँकि, इसने बच्चे के पोम को तोड़ दिया क्योंकि उन्हें कार्य करने के लिए माता-पिता pom.xml निर्भरता प्रबंधन की आवश्यकता होती है, और परिणामस्वरूप मेरे MVN एक्लिप्स या कमांड लाइन से प्रोजेक्ट पर ठीक से काम नहीं कर रहे थे, टूटी हुई pom.xml त्रुटि दे रहे थे।

अंतिम समाधान यदि सभी विफल रहता है, तो अपने प्रोजेक्ट द्वारा आवश्यक .jar फ़ाइलों को मैन्युअल रूप से आयात करना है। प्रोजेक्ट गुण पर क्लिक करें -> जावा बिल्ड पाथ -> लाइब्रेरी और एक्सटर्नल जार जोड़ें।

यदि आपका MVN कमांड लाइन से सही तरीके से काम कर रहा है और आपने प्रोजेक्ट पर एक सफल बिल्ड किया है, तो आपके पास आपके .m2 / रिपॉजिटरी फ़ोल्डर में आवश्यक सभी रिपीटर होंगे। Pom.xml के अपने निर्भरता टैग में उल्लिखित सभी बाहरी जार जोड़ें और आप अपने ग्रहण में एक संदर्भित पुस्तकालय अनुभाग देखेंगे, जिसमें सभी pesky लाल त्रुटियां हुई हैं।

यह इष्टतम समाधान नहीं है, लेकिन यह आपको गुम निर्भरता की किसी भी त्रुटि के बिना ग्रहण में काम करने देगा, और आपको ग्रहण और कमांड लाइन दोनों से मावेन परियोजना का निर्माण करने की भी अनुमति देगा।


1

मेरे साथ भी यही समस्या हुई और ऐसा इसलिए हुआ क्योंकि रेपो के मुद्दों के कारण जार को डाउनलोड करने में त्रुटि हुई, जिसमें लाल झंडे द्वारा इंगित किया गया था pom.xml

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



1

हर बार काम करने के लिए .classpath को अपडेट करें।

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" output="target/classes" path="src/main/java">
        <attributes>
            <attribute name="optional" value="true"/>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="src" output="target/test-classes" path="src/test/java">
        <attributes>
            <attribute name="optional" value="true"/>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
    </classpathentry>
    <classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
    </classpathentry>
    <classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
        </attributes>
    </classpathentry>
    <classpathentry excluding="WEB-INF/" kind="src" path="src/main/webapp"/>
    <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
        <attributes>
            <attribute name="maven.pomderived" value="true"/>
            <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>
        </attributes>
    </classpathentry>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry kind="output" path="target/classes"/>
</classpath>

1

मावेन निर्भरता: ग्रहण में मेरे लिए क्या हल हुआ? मैंने "pom" फ़ाइल में निर्भरता को जोड़ा। मैंने एक निर्माण किया, लेकिन ग्रहण में मावेन निर्भरता को नहीं देख सका। अगला चरण: परियोजना को बंद कर दिया। फिर परियोजना को फिर से खोल दिया। मैं मावेन निर्भरता देख सकता था।


1

मुझे यह त्रुटि तब मिली जब पॉम में त्रुटि हुई।

  1. रन मवन एक्लिप्स: कंसोल पर एक्लिप्स कमांड यह जांचने के लिए कि पोम पार्सबल है या नहीं।
  2. यदि त्रुटि के लिए खोज योग्य नहीं है।

मैं साइबरविन के तहत चल रहा हूं, मैंने देखा कि केवल यह परियोजना ग्रहण के तहत नहीं बन रही थी, हालांकि मुझे कमांड लाइन पर सफल निर्माण (mvn के साथ) मिला। चलाने के बाद mvn eclipse:eclipseसभी आश्रितों को ग्रहण परियोजना में वर्गपथ में जोड़ा गया और परियोजना ठीक दिखी। ++
बिल नायलर

0

यह बहुत आश्चर्यजनक है कि इस एक समस्या के इतने अलग-अलग कारण और संभावित समाधान हैं। मुझे अभी तक एक अलग समाधान मिला जो मेरे लिए काम करता है।

खैर, यह इतना समाधान नहीं है लेकिन एक खोज है: मैं पैकेज एक्सप्लोरर में मावेन डिपेंडेंसीज नोड देख सकता हूं, जो जावा परिप्रेक्ष्य के लिए डिफ़ॉल्ट है, लेकिन मैं इसे जावा ईई परिप्रेक्ष्य में नहीं देख सकता हूं , जो प्रोजेक्ट एक्सप्लोरर का उपयोग करता है डिफ़ॉल्ट रूप से। उन दोनों खोजकर्ता त्वरित नज़र में समान दिखते हैं, इसलिए आप दोनों में मावेन निर्भरता देखने की उम्मीद कर सकते हैं।

जैसा कि मैं यह पता लगाने की कोशिश कर रहा था, मुझे उस अंतर का एहसास नहीं हुआ था, इसलिए अंत में मेरे लिए यह वास्तव में कोई समस्या नहीं थी।


0

संपूर्ण परियोजना ग्रहण में अजीब लग रही थी, मावेन निर्भरता फ़ोल्डर गायब थे, यह अज्ञात के रूप में कुछ प्रकार दिखा रहा था, लेकिन मैं इसे मावेन में सफलतापूर्वक बनाने में सक्षम था। क्या तय मेरी समस्या परियोजना निर्माण पथ पर स्रोत पथ के लिए जीन फ़ोल्डर जोड़ रहा था।

संभवतः यह इस एंड्रॉइड / FBReaderJ / जीन के समान है जो पहले से मौजूद है लेकिन स्रोत फ़ोल्डर नहीं है। स्रोत फ़ोल्डर में कनवर्ट करें या उसका नाम बदलें


0

ग्रहण एसटीएस में यदि "मावेन डिपेंडेंसी" इसे गायब कर देता है, तो आपको अपनी जांच और ठीक करनी होगी pom.xml। मैंने यह (दो बार) किया और मैंने इसे हल किया। यह एक निर्भरता मुद्दा नहीं था, लेकिन एक स्ट्रिंग उत्पन्न हुई और मेरी स्थिति में यादृच्छिक रूप से चली गई pom.xml


0

ऊपर वाले ने मेरे साथ काम नहीं किया। फिक्स के लिए केवल .m2 के तहत रिपॉजिटरी फ़ोल्डर को हटाना था और फिर ग्रहण से एक मावेन अपडेट करना था।


0

इतने सारे जवाब। आप देखते हैं, कई कारण हो सकते हैं, यह काम क्यों नहीं कर रहा है, जैसा कि अपेक्षित था। मेरे मामले में, मुझे अपनी निर्भरता के आसपास के टैग का भी एहसास नहीं हुआ। facepalm

उदाहरण:

...
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>${org.slf4j.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>

यह केवल इसके लिए निर्भरता को बढ़ाता है और वांछित संस्करण के साथ सभी उपप्रोजेक्ट! यह वह है, जो इसे पसंद करता है जैसे कि मास्टर-पोम में दिखना चाहिए। वास्तव में THIS वर्तमान परियोजना में काम का उपयोग करने के लिए, आप भी निम्नलिखित के रूप में चित्रण जोड़ सकते हैं:

...
<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>${org.slf4j.version}</version>
        </dependency>
    </dependencies>
</dependencyManagement>

<dependencies>
    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-log4j12</artifactId>
    </dependency>
</dependencies>

अब यह THIS वर्तमान परियोजना में काम करेगा।

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