求助:在Eclipse中创建Alfresco Maven项目时出现构建错误
解决Maven构建时dependency-plugin 2.10无法解析的问题
嗨,这个问题我之前折腾过好几次,给你几个亲测有效的解决办法:
1. 删掉本地仓库的失败缓存
Maven有个“记仇”的机制,一旦下载某个插件失败,会把失败记录缓存起来,在默认的更新周期内不会再尝试下载。你得手动删掉对应缓存:
- 找到本地Maven仓库路径(一般是
~/.m2/repository),进去找到org/apache/maven/plugins/maven-dependency-plugin/2.10这个目录 - 把这个目录下的所有文件都删掉,尤其是
_remote.repositories和带maven-metadata的文件,这些就是缓存的失败记录
2. 强制Maven重新拉取依赖
直接在项目根目录跑这条命令,强制绕过缓存更新所有依赖和插件:
mvn clean install -U
-U参数就是告诉Maven“别偷懒,不管之前失败多少次,这次重新去仓库拉最新的”
3. 检查你的Maven配置文件
有时候是settings.xml里的镜像配置搞的鬼,比如某些镜像拦截了sonatype仓库的请求:
- 打开
~/.m2/settings.xml或者Maven安装目录下conf/settings.xml - 看看有没有配置不合适的镜像,比如把所有请求都导向了公司内网仓库,但内网仓库没有这个插件版本。可以暂时注释掉有问题的镜像,或者专门给maven插件仓库配个正确的镜像
4. 排查网络和代理问题
如果是网络连不上sonatype仓库:
- 先试试能不能正常访问sonatype的仓库地址(用ping或者curl命令测一下)
- 要是在公司内网,大概率需要配代理,在
settings.xml里加一段代理配置就行:
<proxies> <proxy> <id>company-proxy</id> <active>true</active> <protocol>http</protocol> <host>你的代理地址</host> <port>代理端口</port> <!-- 需要账号密码的话就加上下面两行 --> <!-- <username>你的代理账号</username> --> <!-- <password>你的代理密码</password> --> <!-- 不需要走代理的地址可以写在这里 --> <nonProxyHosts>localhost|*.yourcompany.com</nonProxyHosts> </proxy> </proxies>
5. 换个插件版本试试
如果2.10版本死活拉不到,不如直接升级到更高版本的插件。在项目的pom.xml里加上这段配置,指定一个新的版本(比如3.3.0,这个版本很稳定):
<build> <pluginManagement> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.3.0</version> </plugin> </plugins> </pluginManagement> </build>
内容的提问来源于stack exchange,提问作者karuppasamy
相关产品推荐
相关产品推荐

