maven不用本地repository中的jar, 直接从远程仓库下载问题解决

当Maven不从本地仓库读取jar,而是直接从远程仓库下载时,可能是因为本地jar的SHA1校验失败。删除SHA1文件后重新加载能解决问题。SHA1验证失败可能是由于jar或pom文件被意外修改。确保文件无误后,安全删除SHA1文件可避免从远程仓库下载。
摘要由CSDN通过智能技术生成

本地仓库中有jar,但是maven依然不从本地仓库读取,而从远程仓库来获取,理论上maven加载顺序应该是首先先从本地repository读取,然后再从远程仓库下载,可是为什么这个jar,会直接从远程仓库下载呢?

分析一下本地仓库路径下的文件,(这里是随便截的一个其他jar的,真正出问题的那个jar被我做了一些处理,无法还原了。 但是里面内容都是差不多, 可以看这个就行),这个里面主要有四个文件,一个jar,一个pom。两个sha1,分别对应上面的那个jar和pom。(你说这不是五个么?另一个不重要, 不要在意)猜测问题就处在sha1这个文件的上面。sha1是一种hash算法,主要用来验证文件是否被修改过。估计是maven通过sha1验证jar和pom文件的正确性时,验证不通过, 所以就从远程仓库重新下载,

解决方案

直接删掉这两个sha1结尾的文件,重新在maven reload一下,发现问题解决,不再从远程仓库下载了。

那么问题来了,为什么会存在sha1验证源文件验证不通过呢?jar文件和pom文件有任何微小的变动都会导致,sha1验证失败。但是怎么变了,就不清楚了,

,所以做这种操作时你要确保你的jar,跟pom文件都是没有问题的,那你就可以放心把sha1文件删掉。如果不能保证的话,还是要谨慎操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值