Kotlin buildscript не использует мое пользовательское репозиторий Maven - PullRequest
1 голос
/ 30 января 2020

Groovy скрипт сборки

buildscript {
    repositories {
        maven {
            url 'custom_url'
        }
    }
    dependencies {
        classpath 'commons-codec:commons-codec:1.9'
        classpath 'org.jfrog.buildinfo:build-info-extractor-gradle:4.7.2'
        classpath 'org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.7'
    }
}

Это работало нормально, затем я преобразовал его в скрипт Kotlin ниже.

Kotlin

buildscript {
    repositories {
        maven { url = uri("custom_url") }
    }
    dependencies {
        classpath("commons-codec:commons-codec:1.9")
        classpath("org.jfrog.buildinfo:build-info-extractor-gradle:4.7.2")
        classpath("org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.7")
    }
}

Теперь я получаю эту ошибку -

Could not resolve commons-codec:commons-codec:1.9.
         > Could not get resource 'https://plugins.gradle.org/m2/commons-codec/commons-codec/1.9/commons-codec-1.9.pom'

Как видите, он пытается использовать plugins.gradle.org для получения общего кода-кода c, но он должен получить его от custom_url ... любого идеи, почему это будет происходить?

1 Ответ

0 голосов
/ 30 января 2020

Если вы применяете плагин Gradle с использованием блока plugins { ... }, то с помощью Gradle Kotlin DSL, чтобы Gradle мог разрешить плагин из вашего собственного репозитория, вам нужно добавить репозиторий в settings.gradle.kts следующим образом:

pluginManagement {
    repositories {
        maven("custom_url")
        gradlePluginPortal() // add this line or Gradle won't lookup the plugin portal!
    }
}

Вот как Gradle разрешает плагины, применяемые с синтаксисом plugins { ... }.

См .: Хранилища пользовательских плагинов в документации Gradle.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...