【问题标题】:Best practice for storing dependencies when automating builds for java applications为 Java 应用程序自动构建时存储依赖项的最佳实践
【发布时间】:2015-10-02 04:31:12
【问题描述】:

我们正在考虑采用更 CI 友好的方法来管理我们的本地 jar 依赖文件服务器,或者完全取消它以获得更好的替代方案。现在它只是一个具有某种文件结构形式的 Linux 服务器,例如:

http://server_name/vault/apache.org/axis/version_number/axis.jar
http://server_name/vault/apache.org/axis/version_number/jaxrpc.jar
http://server_name/vault/apache.org/axis/version_number/axis.jar

想知道在您进行自动化构建时采用哪种类型的标准采用企业 CI 实践来管理这些依赖项。

  • 将它们存储在 AWS S3 中是个好主意吗?
  • 是否有任何应用程序可以帮助管理 jar 依赖库? (最好寻找开源解决方案)。例如,您只需添加所需的 jar,然后在构建时使用 API 将其拉下。
  • 假设 apache ant 用于构建项目。如果这在 CI 领域表现不佳,还有什么好的选择?

【问题讨论】:

    标签: ant jenkins amazon-s3 build-automation build-dependencies


    【解决方案1】:

    我建议使用Apache ivy 来管理构建的依赖项。 Ivy 可以配置为从 Maven 存储库中提取您的依赖项,这几乎是现在存储 Java 二进制文件的事实标准。

    Maven Central 是最大的 Java 二进制存储库。要托管您的私有二进制文件,有多种现成的选项:Nexus、Artifactory 或 Archiva

    【讨论】:

    • 有没有办法托管本地 maven 存储库?
    • @alexfvolk 是的。 Nexus、Artifactory 或 Archiva
    猜你喜欢
    • 1970-01-01
    • 2011-10-15
    • 1970-01-01
    • 2019-08-24
    • 2011-08-16
    • 2011-04-19
    • 2015-04-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多