gpt4 book ai didi

maven - Grails 没有从本地 repo 下载最新的插件版本

转载 作者:行者123 更新时间:2023-12-02 14:23:59 25 4
gpt4 key购买 nike

我的设置:

  • 我正在使用 Grails 2.3.8
  • 我有几个私有(private)插件,我通过“grails publish-plugin”手动发布到本地 Nexus 存储库
  • 我有几个使用这些插件的 Grails 应用程序
  • 分布式开发团队

  • 我的目标:
  • 能够部署我的私有(private)插件的新版本并让我的 Grails 应用程序自动使用这些最新版本,而无需修改它们的 BuildConfig.groovy 文件
  • 我知道内联/就地插件定义,这不是我想要的

  • 可能的解决方案:

    据我了解,可能至少有两种方法可以实现我的目标:
  • 部署我的插件的快照版本并让我的 Grails 应用程序使用这些快照版本(例如,版本 =“0.1-SNAPSHOT”)
  • 将我的 Grails 应用程序的 BuildConfig.groovy 配置为使用“latest.release”或 Maven version ranges .例子:
  • 编译 'com.mycompany:some-plugin:latest.version'
  • 编译 'com.mycompany:some-plugin:[0.1,)'

  • 问题:

    上述两种方法都有效。

    它们都会导致我的插件的最新版本被下载,至少最初是这样。但是,如果我发布插件的新版本(无论是快照还是发布),在我的 Grails 应用程序上重新运行“grails run-app”不会尝试下载/安装可用的较新版本。

    我觉得我的 M2_HOME 本地存储库中的 maven-metadata-*.xml 文件限制了已知存在的版本(即使 Nexus 有更新的版本可用)。

    当我使用 mavenRepo() 定义我的 Nexus 存储库时,我是否需要传递一些参数来告诉 Grails 始终检查远程存储库上的新版本而不依赖于本地存储库?

    Graeme 在这里的建议似乎也无济于事: Dependencies and lastest.release

    任何帮助都会很棒。 :-)

    最佳答案

    您是否配置了updatePolicy对于存储库?看

    http://grails.org/doc/latest/guide/conf.html#changingDependencies

    “Aether 和 SNAPSHOT 依赖项”部分。例子:

    mavenRepo "http://myrepo", {
    updatePolicy "interval:1"
    }

    关于maven - Grails 没有从本地 repo 下载最新的插件版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24272372/

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