gpt4 book ai didi

android - 我可以从 JCenter 中删除库吗?

转载 作者:行者123 更新时间:2023-11-29 14:44:27 26 4
gpt4 key购买 nike

我正在使用一些外部库,今天早上我偶然想到了一个想法:如果发布者从 JCenter、Maven Central 等删除他的库怎么办? (我将只关注这两个主要 repo 。)

根据 this和其他一些研究,Maven Central 似乎保存库,你无法删除一些东西。

然而,对于JCenter,我无法找到准确的答案。所以我创建了自己的 Bintray 帐户,创建了一个包并将一些库推送到它。然后我通过单击此按钮将它链接到 JCenter(并在 6 小时后等待成为接受者,为什么?(合法问题)):

enter image description here

现在我有了一个可以从带有 Jcenter 的 Android Studio 项目访问的库,我试图在 Bintray 帐户中乱搞。

来自this threadthe documentation ,我应该可以删除一些东西,让我的整个包裹消失。我唯一能做的就是删除帐户、完整包或版本。我还没有测试它,因为根据线程,JCenter 会创建它的副本,如果你不取消链接,我将无法控制它。但是,我无法像他们在文档中那样在一个版本中手动删除一个文件,我也不能像他们在线程中那样从我的包中“取消链接”JCenter。

所以,我有多个问题:

  • 所有这些都是必要的吗?
  • 是否有可能删除某些内容?
  • 我是否应该为我在本地使用的每个库制作一个副本(并且还为每个库的依赖项制作一个副本)?
  • 在人们所说的和我所看到的之间,JCenter 发生了什么变化?

最佳答案

Jcenter 被设计为不可变的,因为它为许多依赖其包的用户提供服务。

一旦一个包链接到 jcenter,它就在那里。

如果所有者删除了包,bintray 会通过声明所有权(创建包的副本由 jcenter 拥有)来确保它仍然可用。

最佳实践是仅在您的版本中的代码准备好生产后才将您的包链接到 jcenter。最初的收录是一次性的过程。一旦您在 jcenter 中获得了自己的路径命名空间,您将发布的任何新版本都会自动出现在 jcenter 中。

将文件/版本发布到 bintray 后,您有 180 天的宽限期来删除它们。之后,它们变得不可变且无法删除。

如果您仍处于宽限期,您也可以从链接包中删除特定文件或版本,但您将损害您作为 oss 发布者的声誉!因为人们将导入这些版本来自 jcenter,您将破坏他们的代码。这被认为是不好的做法。

希望这对您有所帮助。

关于android - 我可以从 JCenter 中删除库吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45588342/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com