मावेन: लापता net.sf.json-lib


101

मुझे केंद्रीय भंडार में net.sf.json-lib मिला । निर्भरता को कॉपी-पेस्ट किया (संस्करण 2.3 के साथ), और फिर जब मैं निर्माण करता हूं तो मुझे यह त्रुटि मिलती है:

[INFO] Unable to find resource 'net.sf.json-lib:json-lib:jar:2.2.3' in repository central (http://repo1.maven.org/maven2)

[ERROR] BUILD ERROR
[INFO] ---------------------------------------------------------
[INFO] Failed to resolve artifact.

Missing:
----------
1) net.sf.json-lib:json-lib:jar:2.3

  Try downloading the file manually from the project website.

मैंने 2.2.3 संस्करण का उपयोग करने की कोशिश की, लेकिन मुझे वही त्रुटि मिल रही है। क्यों यह त्रुटि आ रही है? मैं इसे स्थानीय रूप से स्थापित करके इसे ओवरराइड कर सकता हूं, लेकिन मैं समझना चाहता हूं कि समस्या क्या है।

संपादित करें - मैंने अपने स्थानीय भंडार से पैकेज को हटा दिया, और फिर से कोशिश की, इस बार एक चेकसम त्रुटि मिल रही है। मुझे लगता है कि मुझे json-lib के साथ एक बग रिपोर्ट दर्ज करनी चाहिए।

[WARNING] *** CHECKSUM FAILED - Error retrieving checksum file for net/sf/json-lib/json-lib/2.3/json
-lib-2.3.pom - IGNORING

ऐसा लगता है कि मावेन सेंट्रल में फ़ाइल एक गलत चेकसम है ... आपको यह तय करना होगा कि आप इसे वैसे भी भरोसा करते हैं या नहीं।
खमरबाइज़

जवाबों:


268

मावेन-केंद्रीय रेपो को देखते हुए:

http://repo1.maven.org/maven2/net/sf/json-lib/json-lib/2.4/

आपको इस निर्भरता के लिए एक क्लासिफायर निर्दिष्ट करने की आवश्यकता है: या तो jdk13 या jdk15, इस तरह:

    <dependency>
        <groupId>net.sf.json-lib</groupId>
        <artifactId>json-lib</artifactId>
        <version>2.4</version>
        <classifier>jdk15</classifier>
    </dependency>

2
मुझे भी यही समस्या हो रही है। में BuildConfig.groovy, मैं करता हूँ: dependencies { runtime group:'net.sf.json-lib', name:'json-lib', version:'2.4', classifier:'jdk15' }लेकिन कोई फायदा नहीं हुआ। मुझे मिलता है Failed to resolve dependency.। कोई विचार क्यों?
एलेक्जेंड्रे बॉलीयर

2
सही। यह मदद नहीं करता है कि search.maven.org/… हमारे लिए झूठ बोल रहा है, और क्लासिफायरियर को छोड़ रहा है।
djsadinoff

- FYI करें, प्ले फ्रेमवर्क 1.x का उपयोग करने वालों के लिए, आप से maven केंद्रीय इस जार उपयोग नहीं कर सकते play.lighthouseapp.com/projects/57987-play-framework/tickets/...
ripper234

अच्छा! आश्चर्य होता है कि जब मैंने शुरुआत में jdk15 पर निर्भरता जोड़ी थी तो क्लासिफायर क्यों सेट नहीं किया गया था।
हेओमी 14

2
आइवी के लिए बराबर क्या है?
रॉन रोमेरो

25

नमूने के रूप में वर्गीकृत करने के लिए

संकलन 'net.sf.json-lib: json-lib: 2.4: jdk15'

या

संकलन समूह: 'net.sf.json-lib', नाम: 'json-lib', संस्करण: '2.4', वर्गीकरण: 'jdk15'

मैंने अधिक क्लासिफायरफ़ायर की खोज की और jdk15 के अलावा कुछ भी नहीं पाया (देखिए या jdk16 या jdk17 पर मत जाइए)


यह मेरे लिए काम नहीं किया। मुझे फ़ाइल को स्थानीय रूप से @ icyrock.com के सुझाव के समान स्थापित करना था, फिर अनुभागों में mavenLocal()पहले रखा mavenCentral()गया था repositories
ben3000

सिर्फ प्रलेखन के लिए: सकर्मक निर्भरता से जुड़े ग्रैडल में कम से कम एक बग है , जहां तक ​​मैं बता सकता हूं, json-lib अपने POM में कोई भी क्लासिफायर डेटा ( यह और यह देखें ) की आपूर्ति नहीं करता है । मुझे यह निर्धारित करने का एक तरीका भी नहीं मिला कि ग्रैडल चेकसम त्रुटियों के लिए जाँच करता है जैसा कि ऊपर बताया गया है।
ben3000

2

भरोसेमंदता के बारे में खिररबाईस की टिप्पणी को छोड़कर, आप इसे स्थानीय रूप से मावेन इंस्टॉल का उपयोग करके स्थापित कर सकते हैं:

mvn install:install-file  -Dfile=path-to-your-artifact-jar
                          -DgroupId=your.groupId
                          -DartifactId=your-artifactId
                          -Dversion=version
                          -Dpackaging=jar
                          -DlocalRepositoryPath=path-to-specific-local-repo

2
मेरे पास पहले से ही जार फ़ाइल थी (मैं प्रोजेक्ट को मावेन में परिवर्तित कर रहा हूं), इसलिए मैंने वही स्थापित किया जो मेरे पास था। धन्यवाद।
ripper234

1

आइवी उपयोगकर्ताओं के लिए, इस निर्भरता को ठीक से खोजने के लिए मेरे आइवीएक्सएक्सएमएल को कॉन्फ़िगर करने के लिए कई अलग-अलग पुनरावृत्तियों की कोशिश करने के बाद, यह अंत में इसके लिए है:

  <dependency org="net.sf.json-lib" name="json-lib" rev="2.4">
        <artifact name="json-lib" url="http://repo1.maven.org/maven2/net/sf/json-lib/json-lib/2.4/json-lib-2.4-jdk15.jar"/>     
    </dependency>

मुझे लगता है कि हार्डवॉयर URL एक इष्टतम समाधान नहीं है, यह आइवी में भी काम करता है: <निर्भरता org = "net.sf.json-lib" नाम = "json-lib" rev = "2.3"> <विरूपण साक्ष्य नाम = "json" lib "maven: classifier =" jdk15 "type =" jar "ext =" jar "/> </ निर्भरता>
stumbav

@stumbav, यह मेरे लिए काम नहीं करता है। यह त्रुटि देता है: पार्स किया गया: [[घातक त्रुटि] ivy.xml: 19: 137: तत्व "मावेन: क्लासिफायर" के लिए उपसर्ग "मावेन" एक तत्व प्रकार "विरूपण साक्ष्य" के साथ जुड़ा हुआ है, बाध्य नहीं है
जितेश सोजत्र
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.