问题描述
在Maven项目中经常会碰到如下错误信息:
: connect timed out pom.xml /firstweb line 1 Maven pom Loading Problem
问题分析
从问题描述上可以发现,其实是目前Maven项目无法获取缺失的plugins信息,会产生如下记录:
.m2/repository/net/bytebuddy/byte-buddy/1.9.16/byte-buddy-1.9.16-javadoc.jar.lastUpdated
Maven在下载仓库中找不到相应资源时,会生成一个.lastUpdated为后缀的文件。这个文件的存在导致了无法更新获取jar
解决办法
在*unix/macos上删除lastUpdated文件:
find ~/.m2 -name “*.lastUpdated” -exec grep -q “Could not transfer” {} ; -print -exec rm {} ;
在windows下执行如下命令:
cd %userprofile%.m2\repository
for /r %i in (*.lastUpdated) do del %i
说明:这里的.m2是指maven的jar文件仓促的磁盘位置。
在删除lastUpdated文件之后,选中项目,点击右键,选中Maven->Update Project -> 选中项目和更新设置,进行更新:
上图为一个示例。
问题解决
执行上述操作之后,就可以正确获取所需jar包文件了。
说明
这里介绍一个mvn命令的参数:
mvc compile/clean/xxx -U
-U : --update-snapshots
Forces a check for missing releases and updated snapshots on
remote repositories
这样mvn命令进行依赖包的检查。