springboot 使用maven拉取依赖 .lastUpdated

本文介绍了在SpringBoot项目中遇到的.m2仓库中jar包以.lastUpdated结尾的问题,详细讲述了通过命令行和IDEA配置解决SSL证书认证问题,以及如何处理下载的jar包未被Maven工程正确引用的故障,包括在IDEA中执行clean和install操作以及reimport项目。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

年后做项目遇到这个超级坑的问题,springboot 项目拉取依赖全是..lastUpdated结尾。setting中的镜像换了几次都不行,最后先用人家的私有云来用了下但是速度太慢了。今天在网上找了很久来解决这个问题。

 

 

使用命令解决jar包下载问题

一开始以为是自己本地的maven环境出了问题,难道是以前配置的阿里云的maven仓库镜像地址失效了吗,于是上网查了下阿里云的maven镜像仓库的地址有没有变化,但是没查到什么结果,于是把settings.xml文件中的maven仓库镜像地址改了下,添加了一些别的镜像地址,但是重新导入jar包还是报一样的错误。
就这样折腾了半天还是没有搞定,看来这个思路不对,于是又上网查了下lastUpdated文件里的报错信息,发现这个错误好像是因为JDK证书认证导致的,但是很奇怪,之前用maven的时候都是好好地,没报这个错误,怎么会突然需要证书认证呢?难道是因为前段时间升级了一下JDK导致的吗,不太清楚,回头再查下这个问题。
先按照网上的解决方法一“忽略SSL证书检查”来试试,在cmd窗口中直接使用maven命令来下载之前一直下载不下来的jar包,需要在maven命令后加入参数
‘-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true’,完整命令如下:
mvn dependency:get -DremoteRepositories=http://maven.aliyun.com/nexus/content/groups/public/ -DgroupId=junit -DartifactId=junit -Dversion=4.8.2 -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true
这样试了以后发现确实可以下载jar包了,看来果然是SSL证书认证的问题了,但是这样下载jar包也不是个办法呀,一个pom文件那么多依赖包,总不能一个一个去下载,要累死的呀。

在IDEA中解决jar包下载问题

基于上面的经验我想着如果能把这个命令配置到IDEA里面那是不是也可以避免SSL的证书认证问题,可以在IDEA里面正常使用maven了。于是乎就在IDEA的maven配置项中找了找,找到了两个地方,一个是Maven——Importing——VM options for importer,另一个是Maven——Runner——VM Options,但是把命令
‘-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true’填了进去应用以后并没有生效,jar包还是下载不下来,难道是没找对地方吗,但是又找了半天,也没有发现其它可以配置命令的地方了,这真是没有办法了啊。

 

 


但是咱不能放弃呀,于是又在网上苦苦查询资料,最后终于不负功夫,在网上找到了一篇文章(https://blog.youkuaiyun.com/qq157538651/article/details/95811622),里面有个正确的解决方法,就是在Maven——Runner——VM Options里配置命令,不过命令不是上面那个,应该是
‘-Dmaven.multiModuleProjectDirectory=$MAVEN_HOME -Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true’,配置进去以后试了下,果然成功了,jar包终于可以正常下载了,真是不容易呀。

 

解决下载的jar包没有被maven工程引用的问题

本以为问题就此已经解决了,可以顺利把工程运行起来了,but,怎么代码还是提示我找不到类呢,还是找不到jar包?但是在本地仓库里明明都已经有这些jar包了呀,这又是怎么回事呢,找了半天还是没找到原因,看来还是自己对IDEA中maven jar包的管理使用不够了解呀。
最后还是和其它正常的maven工程做了对比,终于找到了问题所在,原来我的maven工程的External Libraries是空的,感情是我辛辛苦苦下载下来的jar包没有引用到工程里面啊,但是之前的maven工程在下载完jar包以后External Libraries里面就会自动引用pom文件里引用的jar包了呀,在这里怎么就是空的呢?


最后在网上找到了一篇文章(https://www.cnblogs.com/Grace-is-enough/p/10795180.html),里面说的是这好像是maven的一个bug,jar包没有引用成功,于是按照人家的操作步骤试了下:

 

  1. 打开IDEA侧边栏Maven Project——life cycle——clean
  2. life cycle——install
  3. 最后同样是在Maven Project侧边栏中,右键项目名称——reimport。
    操作完成以后就可以成功的将maven仓库的jar包引用到了IDEA工程中,至此这个问题终于成功地得到了解决。


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值