问题描述

在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包,即是否下载成功

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

image

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

image

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

2. 查看仓库配置

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

window->show view->maven repositories

image

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

那么看settings.xml

%m2_home%\settings.xml

是否配置镜像

image

注意这里对应public仓库

或者是否有配置仓库

image

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

image

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

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

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

1)配置更多的仓库

看public仓库的配置

image

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

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

2)自己上传jar到仓库

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

4. 更新maven index

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

如下图:

image

右键仓库并选择update index

GitHub 加速计划 / ma / maven
4.35 K
2.66 K
下载
Maven: Apache Maven是一个开源的项目管理和构建工具,主要用于Java项目。适合需要自动化项目构建和依赖管理的开发者。特点包括约定优于配置、易于使用和社区驱动。
最近提交(Master分支:1 个月前 )
227b13a9 6 天前
c0866ec0 6 天前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐