栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

jcenter 到 maven

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

jcenter 到 maven

文章目录

一、前言二、三种情况

1、Android官方依赖库2、第三方依赖库3、没有迁移的库

a、直接依赖源码、aar、jar、或者将代码自己找个仓库存起来b、依赖别人的代理仓库,比如阿里的仓库 三、依赖库中包含了没有迁移的仓库

一、前言

以前Android的很多依赖库都是通过jcenter()进行依赖的。但是现在要迁移到mavenCentral()上面。而且等gradle8.0后就没有办法使用了。那么对于一些正在使用的仓库该如何迁移呢

二、三种情况

这里分三种情况来处理,一种是Android本身的库,一种是第三方的库,一种是没有迁移的仓库
(因为迁移了,所以可能依赖名字不能完全一样,所以可以通过关键的单词进行查找)

1、Android官方依赖库

可以在以下网址进行查询,而且还有部分Google的依赖库
https://maven.google.com/web/index.html

2、第三方依赖库

可以通过以下网址进行查询
https://search.maven.org/

3、没有迁移的库

还有一种库是没有迁移的。但是新版的gradle又不让使用了,这里有两种解决方式。

a、直接依赖源码、aar、jar、或者将代码自己找个仓库存起来 b、依赖别人的代理仓库,比如阿里的仓库

这里是阿里的代理仓库地址:
https://developer.aliyun.com/mvn/guide

三、依赖库中包含了没有迁移的仓库

有这么一种情况,假如有一个依赖库使用的是发布在jcenter()上面的版本。我们又不能直接替换,那么需要采取以下这种方式将旧版本屏蔽掉,然后自己再添加新的版本

dependencies {
	implementation 'com.google.android.flexbox:flexbox:3.0.0'
}

configurations {
//这个通过锁定group 和 module 将该依赖全部移除
// 第1中方式
 all*.exclude group: 'com.google.android', module: 'flexbox'
//    或者粗暴点,就没有上面的坑了
// 第2中方式,将包含 该module的依赖全部移除
    all*.exclude module: 'flexbox'
}
//下面强制整个项目全部使用该版本的依赖
configurations.all {
     resolutionStrategy {
         force "com.google.android.flexbox:flexbox:3.0.0"
       }
 }

这里的方式可以参考以下链接:
https://blog.csdn.net/Mr_Tony/article/details/108776208

注意: 该迁移的前提是包名、类名这些没有变化,否则依然会有问题

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/703808.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号