【问题标题】:SVN as Maven RepoSVN 作为 Maven 仓库
【发布时间】:2011-08-12 07:59:28
【问题描述】:

我们正在使用 SVN 来存储 maven 依赖项(组织限制不能像现在那样使用 nexus 或 artifactory maven 存储库)。 SVN 在使用 https 协议的网络服务器上运行。目前,如果添加了新的依赖项,所有开发人员都必须手动更新他们的本地 maven repo 副本。有没有办法在 Maven 构建周期本身期间自动下载\更新新依赖项?尝试使用旅行车插件没有帮助。任何帮助将不胜感激。

【问题讨论】:

    标签: svn maven-2 maven


    【解决方案1】:

    首先尝试尽快获得 Nexus。此外,您正在使用 svn 作为本地用户存储库的替代品。为什么不使用 SVN 作为用户通过 Maven 使用的连接的(临时)替代品。如果您以这种方式配置 Web 服务器,每个人都将通过 Maven 而不是通过 SVN 将依赖项自动下载到 .m2/repository 中。

    【讨论】:

    • 我应该如何配置 web-server 以自动下载依赖项?
    • 你是通过http协议访问SVN的吗?如果是这样,只需配置对(settings.xml)的存储库访问...
    • 我们使用https url访问svn
    • 好吧,您可以将 Maven 配置为将其用作 Maven 存储库(应该可以工作)...但是我建议尽快更改为类似 Nexus 的解决方案,因为它更简单,而且有更多选择等。
    • 如何使用 svn repo 配置 maven,请详细回答
    【解决方案2】:

    您可以使所有开发人员都可以访问共享文件夹,并将 maven 配置为将其用作存储库并创建脚本以在构建时对其进行更新。所以每个机构都会有相同的更新回购。

    但你最好强制获得联系......

    【讨论】:

    • 我们已经检查了对 SVN 的依赖。只需要使用 svn 的解决方案
    【解决方案3】:

    我了解您的情况,因为我们处于类似情况。您需要使用的是本地 Maven 存储库管理器 - 我们在本地构建机器上使用 Apache Archiva(它实际上是我们局域网上的一台旧笔记本电脑)。我确信使用 Archiva 还有其他替代方法,但这是我唯一有经验的方法。

    安装后,您可能需要让每个人将此存储库添加到他们的 ~/.m2.settings.xml 文件中,并将其标记为所有内容的镜像(这意味着 Maven 构建的每个用户都将前往 Archiva 存储库对于它的所有依赖项(至少,那些未存储在用户计算机上的本地存储库中的)。如果 Archiva 不包含依赖项,则可以将其配置为自行下载,并将其存储在 Archiva 存储库中以供其他用户使用。

    (如果您需要更多详细信息,请告诉我,我会在这篇文章中更新更多信息,包括您需要使用的 pom sn-ps 等)

    HTH

    【讨论】:

    • Archiva 是类似的关系或人工制品。我们需要像现在一样坚持使用 svn
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-07
    • 2014-03-06
    • 2016-04-13
    • 1970-01-01
    • 2012-01-16
    相关资源
    最近更新 更多