Maven实战(十一)eclipse下载依赖jar包出问题

时间:2020-12-01 17:28:02

问题描述

在pom.xml中配置了依赖,但是提示依赖不成功,或在本地仓库找不到相关依赖

大致错误如下:
ArtifactDescriptorException: Failed to read artifact descriptor for commons-beanutils:commons-beanutils-core:jar:1.8.0: ArtifactResolutionException: Could not transfer artifact commons-beanutils:commons-beanutils-core:pom:1.8.0

解决问题思路

1. 先查看本地仓库是否有这个jar包,即是否下载成功

一般是未下载成功,有时候可能是网络问题,那么删除了重试

Maven实战(十一)eclipse下载依赖jar包出问题

即update maven project,右键项目:maven->update project

Maven实战(十一)eclipse下载依赖jar包出问题

并勾选force选项,如果勾选force,那么不用删除未下载成功的残余文件,在大量jar包未下载成功的时候可以选择勾选force

2. 查看仓库配置

如果发现没有下载成功,则立即检查eclipse连接的仓库是否有问题

window->show view->maven repositories

Maven实战(十一)eclipse下载依赖jar包出问题

如果仓库配置正确了,掠过此步骤,如果这里的仓库地址配置不对

那么看settings.xml

%m2_home%\settings.xml

是否配置镜像

Maven实战(十一)eclipse下载依赖jar包出问题

注意这里对应public仓库

或者是否有配置仓库

Maven实战(十一)eclipse下载依赖jar包出问题

当然,有的项目在pom.xml里面也指定了仓库地址,那么以pom.xml为优先考虑

Maven实战(十一)eclipse下载依赖jar包出问题

3. 去仓库查看是否有对应的jar

搜索仓库,如果发现了对应的jar,基本是网络问题,或者是之前的仓库配置有问题

配置正确重试即可,如果没有,那么说明现有的仓库里没有对应的jar,解决方法有2种

1)配置更多的仓库

看public仓库的配置

Maven实战(十一)eclipse下载依赖jar包出问题

左边的仓库表示是正在用的仓库,如果有Central,基本能下载到常用的jar

如果没有,可以考虑再添加新的仓库,有时候可能我们把Central拖到右边去了,导致下载不到

2)自己上传jar到仓库

具体请参考我之前的文章:Maven实战(十)利用 Nexus 来构建企业级 Maven 仓库

4. 更新maven index

以上方法试过了都不行,可以重新更新索引

如下图:

Maven实战(十一)eclipse下载依赖jar包出问题

右键仓库并选择update index

最后强制更新maven项目,基本就可以了,如果还有问题,请联系我