2

我一直在研究ArtifactoryNexusArchiva等软件工件存储库。像这样的工件存储库在具有依赖管理和自动构建工具的持续集成环境中表现良好。它们在很大程度上受到 Maven 的影响。

我也知道 Linux 软件包存储库,例如 Debian 或 RedHat 使用的。使用这些系统,下载和安装具有所有必要依赖项的软件非常容易。

类 Maven 存储库和 Linux 包存储库之间的主要区别是什么?是否有任何根本不同的设计目标?除了平台实现,它们可以互换吗?

4

3 回答 3

1

Artifactory 有YUM 插件,这使它能够像任何标准的 HTTP 公开 YUM 服务器一样运行(用于部署和解析)。

对 Debian 软件包的支持也在路线图上。

于 2012-07-12T06:37:10.980 回答
1

那里的各种工件创建应用程序不会做任何 rpm 或 deb 不会做的事情,实际上它们通常的能力要差得多,而且要复杂得多。我怀疑避免使用 deb 或 rpm 的最大问题是无知。另一个是工件与操作系统无关(尽管构建肯定不是)并且与分发无关,所以有,但我认为没有任何显着优势。

于 2016-09-14T16:32:02.983 回答
0

Linux 软件包存储库

  • 主要服务于最终用户软件,但也可以服务于开发人员库
  • 发布版本很流行,有时可以使用快照版本
  • 通常自动安装或删除的传递依赖项
  • 用于频繁安装包,不经常删除
  • 软件包安装在单个系统范围的位置
  • 仅提供特定于发行版的 Linux 软件
  • 服务器在 Linux 上运行
  • 用于浏览和下载的命令行或图形工具

软件工件存储库

  • 主要服务于开发者库,但也可以服务于最终用户软件
  • 发布和快照构建都很常见
  • 传递依赖项以各种方式处理,具体取决于包
  • 包本质上是缓存在用户的机器上,可能会经常被清除
  • 包是按项目缓存的,而不是系统范围的
  • 为任何操作系统提供软件
  • 服务器在任何桌面或服务器操作系统上运行
  • 用于浏览和下载的 Web 界面
  • 支持多种协议(Maven、Ivy、NuGet、P2等)
于 2012-07-12T13:15:12.153 回答