如何通过gradle(在函数中)在本地maven repo中安装子项目?

问题描述 投票:0回答:1

在gradle中,当我运行我的脚本时,我有一堆依赖于其他子项目的子项目。我们需要将它们作为外部罐子(因为各种原因而不是compile project)。所以我需要在本地安装它们。我希望这是父gradle中定义的函数。

当我尝试在函数内调用install ":projName"时,我收到错误:

无法在类型为org.gradle.api.Project的根项目'test'上找到参数[:projName]的方法install()

我该怎么做?

ext.installLocal = {moduleName ->

    //...elided... doing some checking, conditionals, etc

    //Try to install locally
    install ":${moduleName}"
}
java maven gradle groovy gradlew
1个回答
1
投票

您需要将build.finalizedBy(publishToMavenLocal)命令添加到需要在maven本地推送的所有子项目build.gradle文件中。如果您需要将所有子项目推送到maven本地,则可以在主subprojects{ }文件中的build.gradle闭包中调用此命令。但请记住,如果子项目彼此依赖,则构建顺序至关重要。

© www.soinside.com 2019 - 2024. All rights reserved.