Nexus中依赖包版本降级

在Android工程中,使用com.groupId:dependName:+依赖最高版本,对Nexus中依赖包降级时本地依赖会出错。原因是Gradle拿本地缓存与Nexus最高版本比对,本地或缓存有最高版本会有问题。解决办法包括删除Nexus最高依赖包并更新Index,删除本地Maven仓库、Gradle依赖缓存库,清理工程依赖。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题

我们在工程中使用com.groupId:dependName:+来依赖最高版本。当我们对Nexus中的该依赖包降级(删除原来的最高版本,更新Index)。我们的本地依赖会出错

原因

使用+时,Gradle会拿Gradle本地缓存与Nexus(多个仓库取多个仓库中最高版本)中的最高版本号进行比对。如果Nexus中存在更高版本,则下载Nexus中的版本缓存于本地maven仓库和Gradle缓存仓库。因此如果本地仓库存有最高版本,将导致仍然使用原最高版本jar。如果本地没有而Gradle缓存中有则会报错找不到这个jar。

解决

1.Nexus中删除最高依赖包,并更新Index
这里写图片描述

2.删除本地Maven仓库

rm -rf  ~/.m2/repository/groupId*

2.删除Gradle依赖缓存库

rm -rf ~/.gradle/caches/modules-2/files-2.1/groupId*
rm -rf ~/.gradle/caches/transforms-1/files-1.1/dst-higher-version.jar
rm -rf ~/.gradle/caches/modules-2/metadata-2.58/descriptors/groupId*

3.工程对依赖清理

cleanBuildCache
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值