Ошибка Gradle в Android Studio: плагин с id ' com.андроид.библиотека не найден

когда я пытаюсь построить проект библиотеки Android в Android Studio, я получаю следующую ошибку Gradle:

Gradle sync failed: Plugin with id 'com.android.library' not found.

Я довольно новичок в Gradle и это очень запутанной для меня. Почему это происходит?

сборка.файл Gradle выглядит следующим образом:

apply plugin: 'com.android.library'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.0'
}

4 ответов


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

- вы примерно следующую структуру:

Root/
 + lib
    | build.gradle
 | build.gradle
 | settings.gradle 

на ваш топ-уровня файл, который вы можете использовать:

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        jcenter()
    }

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

allprojects {
    repositories {
        jcenter()
    }
}

в своем lib/build.gradle вы можете использовать код выложил в вопрос:

apply plugin: 'com.android.library'

android {
    compileSdkVersion 23
    buildToolsVersion "23.0.2"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 23
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
    testCompile 'junit:junit:4.12'
    compile 'com.android.support:appcompat-v7:23.1.0'
}

наконец-то в свой settings.gradle

include ':lib'

также вы можете обратиться этот вопрос.


предполагая, что у вас есть стандартная структура проекта, как показано ниже:

yourProject/
 + .idea/
 + gradle/wrapper/
 + lib-module/
    | build.gradle
 | build.gradle
 | gradlew
 | gradlew.bat
 | settings.gradle

ваш сбой синхронизации, похоже, указывает на проблему с вашей конфигурацией SDK/IDE.

начните с открытия диалогового окна " структура проекта "и убедитесь, что значение" Android SDK location: "установлено на правильный путь.

во-вторых, откройте Диспетчер SDK и снова убедитесь, что у вас установлен правильный путь к местоположению SDK.

в-третьих, убедитесь, что у вас есть правильная версия установлен пакет" Android SDK Build-Tools". (23.0.2 в данном случае)

наконец, чтобы убедиться, что у нас нет плохого состояния, я рекомендую сделать "Invalidate и Restart" из файла -> "Invalidate Caches /Restart..."

после всего этого я ожидаю, что он должен синхронизировать. Если не попытаться запустить ./gradlew из корня вашего проекта и сообщать нам о любой новой информации.


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

apply plugin: 'com.android.library'

добавьте эти строки в файл gradle библиотеки.


в моем случае из-за неправильных путей sdk/ndk внутри local.файл свойств, я переместил проект с hd на другой, и эти настройки были неправильными, исправляя пути, исправили проблему.