配置Gradle Kotlin DSL以使用自定义存储库

配置Gradle Kotlin DSL以使用自定义存储库,gradle,kotlin,Gradle,Kotlin,我正在从事一个项目,在这个项目中,我们使用的不是默认的存储库(Maven Central、jCenter等等),而是内部JFrog存储库。该项目将Kotlin DSL用于Gradle 问题是,即使在settings.gradle.kts文件中配置pluginManagement块,gradle仍然试图从gradle中央插件库获取依赖项 // settings.gradle.kts pluginManagement { repositories { maven(url =

我正在从事一个项目,在这个项目中,我们使用的不是默认的存储库(Maven Central、jCenter等等),而是内部JFrog存储库。该项目将Kotlin DSL用于Gradle

问题是,即使在
settings.gradle.kts
文件中配置
pluginManagement
块,gradle仍然试图从gradle中央插件库获取依赖项

// settings.gradle.kts
pluginManagement {
    repositories {
        maven(url = "https://myinternalrepo.corp/artifactory")
    }
}

// other definitions
失败消息:

Plugin [id: 'org.gradle.kotlin.kotlin-dsl', version: '1.1.3'] was not found in any of the following sources:

- Gradle Core Plugins (plugin is not in 'org.gradle' namespace)
- Plugin Repositories (could not resolve plugin artifact 'org.gradle.kotlin.kotlin-dsl:org.gradle.kotlin.kotlin-dsl.gradle.plugin:1.1.3')
  Searched in the following repositories:
    Gradle Central Plugin Repository

有人知道我做错了什么吗?

看来你错过了公司缓存中的Gradle插件库maven库。只需确保您拥有
https://plugins.gradle.org/m2/
包括在内。 这个错误正好表明它找不到插件

Gradle插件通常列在那里,插件依赖项从
jcenter


顺便说一句,我们今天有Kotlin
1.3.20
,也许升级是有意义的如果你想为你的
buildSrc
脚本配置插件库,你需要在
buildSrc
目录中创建一个专用的
settings.gradle[.kts]
文件并配置
pluginManagement{}
block在那里

实际上,
buildSrc
是一种单独的构建,在评估/执行主构建之前首先执行。因此,您无法配置
插件管理

{}
如果您想在
buildSrc
脚本中使用这些自定义存储库,请在根项目的
settings.gradle中使用{}
块。

我没有将gradle与Kotlin一起使用,但是我非常确信这应该放在build.gradle文件中。(还不确定是否能将此转化为答案)您在构建脚本中使用了哪些语法来声明插件:新的
plugins{}
DSL还是旧的
apply plugin…
DSL?在项目中,我有一个
buildSrc/build.gradle.kts
文件,其中应用了kotlin DSL插件:
plugins{`kotlin DSL`)
我认为您需要在
buildsrc
目录中创建一个
settings.gradle.kts
,并在那里添加
pluginManagement{}
块。@M.Ricciuti啊,耶!这就成功了!请将其添加为答案:)
1.1.3
是Kotlin Gradle DSL的版本(与Gradle 5.2捆绑在一起)