我的编程空间,编程开发者的网络收藏夹
学习永远不晚

JCenter即将被停止服务的事件有哪些

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

JCenter即将被停止服务的事件有哪些

这篇文章主要为大家展示了“JCenter即将被停止服务的事件有哪些”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“JCenter即将被停止服务的事件有哪些”这篇文章吧。

可能有许多朋友都已经知道了这个事情,JCenter即将在Android上被废弃了。

这么重大的事件也是相当出乎我意料,本来我以为是Google又要整什么幺蛾子,因为Google很喜欢废弃东西。结果了解下来,Google这次也是受害者。

今年2月3号,JFrog(JCenter的运营方),在其官网宣布了这一重大决定,包括Bintray、JCenter在内的多项软件包管理和分发服务都将停止运营。原文链接如下:

https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/

JFrog的这则声明可谓是杀伤力极强,为什么这么说呢?因为它即将影响到的是所有的Android开发者,是的你没听错,是所有。

只要你是一名Android开发者,就一定使用了JFrog提供的服务,即使你没听过JFrog这个名字,你也一定在不知不觉中使用了JFrog的服务。

当我们在Android Studio当中新建一个Android项目时,你总是可以在build.gradle文件里找到这样一段配置:

repositories {     google()     jcenter() }

这段配置的意思是,指定当前的项目工程可以从哪些仓库上去拉取依赖库给当前项目使用。

其中,google()指的是Google自家的仓库,比如我们使用的很多第一方库,如RecyclerView, Jetpack  Components等等就是从这里拉取的。

而jcenter()指的就是由JFrog提供的JCenter仓库,几乎Android上所有的第三方开源项目都会选择将库发布到这里,比如你在项目中集成的OkHttp、Retrofit、RxJava等等第三方库都是从这里拉取的。

Android的第三方库规模庞大,数量远超Google的第一方库,可以说任何一个Android项目都会依赖许多的第三方开源项目。这也是为什么我说,JFrog的这则声明杀伤力极强了。

接下来我来跟大家具体介绍一下JCenter的停止服务会带来哪些影响,以及这些影响生效的时间节点。

毫无疑问,JCenter的停止服务势必会影响两类人群:开源库的开发者和开源库的使用者。

开源库的开发者在接下来的一段时间里可能会是最头疼的人,因为本篇文章发布的时候,你已经无法再向JCenter提交任何库的更新了。

根据JFrog给出的时间节点,自2021年3月31日之后,JCenter就不再接受任何新的提交。

JCenter即将被停止服务的事件有哪些

刚巧我最近有个开源库(PermissionX)的新版本要发布,前两天像往常一样向JCenter去提交新版本,结果发现却没能提交成功。然后我到JFrog官网才找到了这条时间节点,真的是非常遗憾,新版本暂时发布不成了。

而如果你是开源库的的使用者,那么短时间内你还可以不用担心,因为JCenter会继续提供服务到2022年2月1日。在那之前,你仍然可以在Android  Studio中正常拉取2021年3月31日之前提交至JCenter的开源库。

JCenter即将被停止服务的事件有哪些

关于JFrog的声明里比较重要的内容和时间节点差不多就是这些了,但是对于广大的Android开发者而言,我们现在应该做什么呢?

我认为现在能做的事情还不太多,因为整个事件当中,还有一位非常核心的玩家没有表态,那就是Google。

刚才说了,Google也是这次事件的受害者,本来Android  Studio创建项目时默认集成JCenter仓库,我还以为Google是和JFrog建立了战略合作关系。没想到被JFrog一则停止服务声明,直接影响了整个Android开源库的生态。

而这个事情发生得也比较突然,JFrog2月3日才宣布的消息,3月31日就不再接受任何新库的提交了。感觉Google对此也没有充足的时间进行应对,因此只在Android开发者官网发布了这样一条简单的声明:

JCenter即将被停止服务的事件有哪些

大概意思就是说,JCenter要停止服务了,建议大家改用Maven Central,Google会在不久之后发布迁移方案。

其实我印象中在JCenter之前,Android默认的第三方仓库就是Maven Central,现在看上去又是要改回去的意思?

我就在寻思着,Google会不会有计划自建一个第三方开源项目的仓库,从而不用再担心这种突然被停止服务的困扰。于是我又跟Google那边去求证了一下,得到的答复是Google并没有此计划,那么由此看来大概率是要使用Maven  Central了。

如果你现在想要将自己的开源库发布到Maven Central上,可以参考这篇文档来进行操作:

https://maven.apache.org/repository/index.html

我发现有些库的反应非常快,现在已经将新版本发布到Maven Central上了,比如说Glide。

JCenter即将被停止服务的事件有哪些

可以看到,在repositories当中,Glide已经把jcenter()替换成了mavenCentral()。

但手动添加仓库毕竟很难形成标准,因此这件事还是需要Google来推动。相信要不了多久,Android  Studio创建新项目时默认的仓库就会由jcenter()变成mavenCentral()了。

不过目前我们只是可以将一个库的新版本发布到Maven  Central上,而以前的老版本还是保留在JCenter上的,这些老版本会在明年2月1日彻底无法访问,所以我们仍然需要Google尽快给出迁移方案,从而让第三方的开源库可以无缝从JCenter切换到Maven  Central。

迁移方案会在以下网址更新,当然到时候我也会写文章来进行讲解的。

以上是“JCenter即将被停止服务的事件有哪些”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

JCenter即将被停止服务的事件有哪些

下载Word文档到电脑,方便收藏和打印~

下载Word文档

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录