关于pom.xml的Missing artifact net.sf.json-lib:json-lib:jar:2.4报错问题(两种有效的解决方案)

版权声明:本文为博主原创文章,转载请注明作者和来源。https://blog.csdn.net/Eternal_Blue/article/details/85114207

 

博主之前在从Git上拉取了一个SpringBoot项目,pom.xml中直接出现了报错,Missing artifact net.sf.json-lib:json-lib:jar:2.4

缺少jar包 (net.sf.json-lib:json-lib:jar:2.4)

根据提示得知,这个问题主要原因是Maven本地库里jar包问题,百度了一圈,全是讲解引入jar包的问题

 

这是报错的地方,(注意,有些coder的pom.xml中没有这个dependency配置。如果没有就直接配置下面正确的就ok了!

那么这个报错的问题出在那里呢?你可以进入maven本地库,通过图一指定的路径“net/sf/json-lib/json-lib/2.4”查看(如图三所示)

 

 

仔细的你可以观察到,其实文件的名字是叫 “json-lib-2.4-jdk15.jar” 。重点是后面的 jdk15 

(其实这里有很多人说是JDK的版本问题,说什么这个jar包是jdk1.5的。具体是不是其实我也不清楚,但是我用的是JDK1.8,当然JDK1.7的是如此操作。就暂且当这个原因是jar包名字的问题吧!!)

言归正传,既然之前的配置错了,那就在pom.xml中就多配置一项(如图四,代码如下)

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

配置完成后,重新更新下(右击项目名 - Maven - update project),然后这里就不会报错了。是不是很神奇!!

虽然这个方案能解决大多数人的麻烦,但是对于修改配置后,pom.xml的头标签后仍然报错的coder来说是很头疼的!、

下面是我修改后遇到的问题:

 

配置成功并更新后,发现头标签还是报错,报错原因还是老样子。然后又去百度!!结果一无所获!!!!

既然百度不到解决的正确方法,那就自己动手寻找问题解决。

第一个尝试的方法(失败!!!):

既然已经导入jar包,也按照上面讲的配置好了,还出错!当时想的可能是项目的问题了。重新从git上拉取了一遍,还是报错。那就不是项目的问题了。。。

第二个尝试的方法(成功!!!):

推翻文章最起初的解决方案,修改本地库的jar包名字(如图6、图7)

 

修改完jar包名字后,就需要重新配置pom.xml了,这里修改很简单,只需要删掉<classifier>jdk15</classifier>就可以了了(如图8所示)

 

修改完以后,再update下,pom.xml就不报错了,问题解决了!!(update的方法上面有讲),

这篇文章是根据自己的实际情况来解决的,或许对有些人不管用。

总结:

遇到xml报错,首先应该先去看一下具体是哪里报错,看看是否能找到指定的路径/文件,有针对性的找错误!千万不要一上来就认定导入的项目有问题,就删除它。删除项目解决问题是不推荐的(虽然有时候很有效)。

 

版权声明:本文为博主原创文章,转载请注明作者和来源。https://blog.csdn.net/Eternal_Blue/article/details/85114207

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章