2

下面是一个示例,为了将 a 添加custom-plugin到应用程序中,我们需要在解析策略中指定它的依赖关系,并使用 useModule 将其添加到类路径中

-------build.gradle----------
plugins {
  id 'custom-plugin'
}
-------settings.gradle----------
 pluginManagement {
    resolutionStrategy {
      eachPlugin {
        if (requested.id.namespace == 'custom-plugin') {
            useModule('org.gradle.sample:custom-plugins:1.0.0')
        }
      }
    }
    repositories {
       maven { url 'maven-repo'  }
    }
}

有没有更简单/更好的方法来添加依赖项(useModule 部分)?

我不想requested.id.namespace每次都添加 if 条件并检查命名空间以查找我添加的任何新自定义插件。

有没有办法避免这种情况,就像在应用程序中添加插件的旧方式一样,其中 buildscript 块我们只需要使用类路径添加该依赖项。

buildscript {
repositories {
    maven { url "https://privaterepo.myemployer.com" }
}

dependencies {
    classpath "org.gradle.sample:custom-plugins:1.0.0"
}
4

1 回答 1

0

这取决于存储库是否知道请求的requested.id.id,并添加了默认.gradle.plugin后缀。您的问题导致了另一个答案- 我在那里提供的示例可能显示了何时需要使用resolutionStrategy,何时不需要。

于 2022-02-27T12:11:45.787 回答