Android Studio: плагин с идентификатором 'android-library' не найден

151

Я пытался заставить 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 .

Grzegorz Żur
источник
Для получения более актуальной информации, безусловно, рекомендуется использовать более высокий номер версии com.android.tools, о чем также упоминал @Elenasys в более позднем ответе. В противном случае вы можете столкнуться с этой проблемой: обсуждения.gradle.org
t/
1
Мне нужно было добавить это в build.gradle моего проекта , добавление его в один файл gradle модуля не помогло
syonip
Как я узнаю, какую версию Grall я скачал? Кстати, 1.1.1 работает для меня
Бинил Джейкоб
2
@binil Это версия плагина Android Gradle, а не самого Gradle. Все версии перечислены в репозитории Maven mvnrepository.com/artifact/com.android.tools.build/gradle Чтобы составить список зависимостей сборки, запуститеgradle buildEnvironment
Grzegorz 8ur
Этот ответ stackoverflow.com/a/48451418/2186220 , в этой теме сам работал у меня по состоянию на август 2019 года.
Bot
28

Просто для записи (это заняло у меня довольно много времени), прежде чем у меня сработал ответ Гжегожа, я должен был установить « репозиторий поддержки Android » через SDK Manager!

Установите его и добавьте следующий код выше, примените плагин: 'android-library' в build.gradle папки actionbarsherlock!

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.+'
    }
}
Лангустен Густел
источник
@beworker Я уже установил «хранилище поддержки Android», но все еще та же проблема: «Ошибка: (1, 0) Плагин с идентификатором« Android »не найден»
Sunishtha Singh
18

использование

apply plugin: 'com.android.library'

преобразовать модуль приложения в модуль библиотеки. Более подробная информация здесь: https://developer.android.com/studio/projects/android-library.html

IgorGanapolsky
источник
1
переход с com.android-library на com.android.library сохранил день здесь
carl
10

В более поздних версиях плагин изменил название на:

apply plugin: 'com.android.library'

И, как уже упоминалось в некоторых других ответах, вам нужны инструменты Gradle, чтобы использовать их. Используя 3.0.1, вы должны использовать Google 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'
    }
}
Zoe
источник
6

Используйте mavenCentral()или jcenter()добавьте в build.gradleфайл скрипт:

buildscript {
    repositories {
        jcenter()
    }

    dependencies {
        classpath 'com.android.tools.build:gradle:1.5.0'   
    }
}
Jorgesys
источник
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
}
Хасан Юсеф
источник