"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > कमांड लाइन से चलते समय मैं मेवेन में \"NoClassDefFoundError\" को कैसे हल कर सकता हूं?

कमांड लाइन से चलते समय मैं मेवेन में \"NoClassDefFoundError\" को कैसे हल कर सकता हूं?

2024-11-08 को प्रकाशित
ब्राउज़ करें:354

How can I resolve the \

NoClassDefFoundError के लिए शेड प्लगइन के माध्यम से निर्भरता संकल्प

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

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

क्लासपाथ में मैन्युअल रूप से लाइब्रेरी जोड़ने के बजाय, मेवेन-शेड-प्लगइन एक अधिक कुशल समाधान प्रदान करता है। यह एक "uber-JAR" बनाता है जो एप्लिकेशन कक्षाओं को आवश्यक लाइब्रेरी कोड के साथ जोड़ता है।

इसे लागू करने के लिए, अपने POM में निम्नलिखित प्लगइन कॉन्फ़िगरेशन जोड़ें:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>3.5.2</version>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>shade</goal>
            </goals>
        </execution>
    </executions>
</plugin>

इस कॉन्फ़िगरेशन को जोड़ने के बाद, निम्नलिखित कमांड को फिर से चलाएँ:

$ mvn package
$ java -cp target/bil138_4-0.0.1-SNAPSHOT.jar tr.edu.hacettepe.cs.b21127113.bil138_4.App

उन्नत कॉन्फ़िगरेशन विकल्पों के लिए, जैसे शामिल JAR या एक निष्पादन योग्य JAR फ़ाइल को निर्दिष्ट करना, मेवेन-शेड-प्लगइन वेबसाइट पर "उदाहरण" अनुभाग देखें।

नवीनतम ट्यूटोरियल अधिक>

चीनी भाषा का अध्ययन करें

अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।

Copyright© 2022 湘ICP备2022001581号-3