Как добавить `android` Kotlin DSL в путь к классам в модуле buildSr c? - PullRequest
1 голос
/ 06 мая 2020

Я хочу сделать некоторые методы расширения в buildSrc, чтобы использовать их в build.gradle.kts -файлах других модулей

В частности, мне нужно расширить com.android.build.gradle.LibraryExtension. Для этого мне, кажется, нужен com.android.library в пути к классам buildSrc. Попытка достичь этого с помощью

plugins {
   id("com.android.library") apply false
}

дает мне ошибку Plugin [id: 'com.android.library', apply: false] was not found in any of the following sources:.

Какая правильная настройка для этой цели?

Полное содержимое build.gradle.kts из buildSrc ниже:

buildscript {
   repositories {
      mavenCentral()
      google()
      jcenter()
   }

   dependencies {
      classpath("com.android.tools.build:gradle:3.6.3")
   }
}

plugins {
   `kotlin-dsl`
   id("com.android.library") apply false
}

1 Ответ

0 голосов
/ 07 мая 2020

Просто игнорируйте все, что я ранее писал. Вот как я смог использовать LibraryExtension. Однако, ymmv, это кажется тяжеловесным.

repositories {
    jcenter()
    google()
}

// ...snip...

dependencies {
    implementation("com.android.tools.build:gradle:3.6.3")
}

Если все, что вам нужно, это доступ к классу, вы хотите, чтобы он был зависимостью, а не плагином. Я все еще не уверен, как заставить эту работу работать как плагин в buildSr c, так что, надеюсь, вы получите то, что вам нужно.

...