Android Studio: плагін із id "android-library" не знайдено


150

Я намагався змусити ActionBarSherlock працювати та мати певні проблеми. Одне питання, на яке я зіткнувся, - це таке повідомлення при спробі його скласти:

Plugin with id 'android-library' not found

Конкретно:

D:\Projects\Android\actionbarsherlock>D:\Projects\Android\gradlew --info build
Starting Build
Settings evaluated using empty settings script.
Projects loaded. Root project using build file 
  'D:\Projects\Android\actionbarsherlock\build.gradle'.
Included projects: [root project 'actionbarsherlock']
Evaluating root project 'actionbarsherlock' using build file 
  'D:\Projects\Android\actionbarsherlock\build.gradle'.

FAILURE: Build failed with an exception.

* Where:
Build file 'D:\Projects\Android\actionbarsherlock\build.gradle' line: 1

* What went wrong:
A problem occurred evaluating root project 'actionbarsherlock'.
> Plugin with id 'android-library' not found.

Я розглядаю це як проблему АБС окремим потоком, тому мені цікаво, як вирішити загальну проблему:

Plugin with id 'android-library' not found

Ось build.gradle:

apply plugin: 'android-library'

dependencies {
  compile 'com.android.support:support-v4:18.0.+'
}

android {
  compileSdkVersion 14
  buildToolsVersion '17.0.0'

  sourceSets {
    main {
      manifest.srcFile 'AndroidManifest.xml'
      java.srcDirs = ['src']
      res.srcDirs = ['res']
    }
  }
}

Ви можете допомогти?

Відповіді:


263

Попросіть Gradle завантажити плагін для Android із сховища Maven Central.

Ви робите це, вставляючи такий код на початку файлу збірки Gradle:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.1.1'
    }
}

Замініть рядок версії 1.0.+на останню версію. Випущені версії плагіна Gradle можна знайти в офіційному сховищі Maven або в пошуку артефактів MVNRepository .


Для отримання більш актуальної інформації напевно рекомендується вищий номер версії для com.android.tools, про що також згадував @Elenasys у подальшій відповіді. Інакше ви можете зіткнутися з цією проблемою: обговоріть.gradle.org/t/…
RenniePet

1
Мені потрібно було додати це до build.gradle мого проекту , додавши його до одного модуля, файл gradle не допоміг
syonip

Як я дізнаюся, до якої версії гредена я завантажив? Btw 1.1.1 працює для мене
Binil Jacob

2
@binil Це версія плагіна Android Gradle, а не самого Gradle. Усі версії перелічені в Maven Repository mvnrepository.com/artifact/com.android.tools.build/gradle Щоб перелічити залежності побудовиgradle buildEnvironment
Grzegorz Żur

Ця відповідь stackoverflow.com/a/48451418/2186220 у цій темі сама працювала для мене станом на серпень 2019.
Бот

28

Тільки для запису (зайняв у мене досить багато часу), перш ніж відповідь Grzegorzs працювала на мене, мені довелося встановити " сховище підтримки Android " через менеджера SDK!

Встановіть його та додайте наступний код вище, застосуйте плагін: 'android-library' у build.gradle папки actionbarsherlock!

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.+'
    }
}

@beworker Я вже встановив "сховище підтримки для Android", але все одно це питання: "Помилка: (1, 0) Плагін з id 'android' не знайдено"
Sunishtha Singh


10

У пізніших версіях плагін змінив ім'я на:

apply plugin: 'com.android.library'

І як уже згадувалося в деяких інших відповідях, вам потрібні інструменти gradle для того, щоб ним користуватися. Використовуючи 3.0.1, ви повинні використовувати gopogle repo, а не mavenCentral або jcenter:

buildscript {
    repositories {
        ...
        //In IntelliJ or older versions of Android Studio
        //maven {
        //   url 'https://maven.google.com'
        //}
        google()//in newer versions of Android Studio
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
    }
}

6

Використовуйте mavenCentral()або jcenter()додайте у build.gradleфайл сценарій:

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.5.0'   
    }
}

1

Додайте нижче до build.gradleмодуля проекту:

// Файл збірки верхнього рівня, куди можна додати параметри конфігурації, загальні для всіх підпроектів / модулів.

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        jcenter()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.