Maven:缺lessnet.sf.json-lib

我在中央资源库中findnet.sf.json-lib。 复制粘贴的依赖(版本2.3),然后当我build立我得到这个错误:

[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 

看着maven-central的回购:

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> 

以gradle为样本

编译'net.sf.json-lib:json-lib:2.4:jdk15'

要么

编译组:'net.sf.json-lib',名称:'json-lib',版本:'2.4',分类:'jdk15'

我search了更多的分类器找不到除了jdk15以外的其他东西(不要去找或jdk16或jdk17)

除了khimarbaise关于可信性的评论,你可以使用maven install在本地安装:

 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 

对于ivy用户来说,在尝试了许多不同的迭代来configuration我的ivy.xml以正确地find这个依赖关系之后,终于为我工作了:

  <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>