Android Studio: No se encontró el complemento con la identificación 'android-library'

149

He estado tratando de hacer que ActionBarSherlock funcione y tengo algún problema. Un problema que he encontrado es el siguiente mensaje cuando intento construirlo:

Plugin with id 'android-library' not found

Específicamente:

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.

Estoy tratando esto como un problema de ABS en un hilo separado, así que aquí tengo curiosidad sobre cómo abordar el problema general de:

Plugin with id 'android-library' not found

Aquí está el 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']
    }
  }
}

¿Puede usted ayudar?

Miguel
fuente

Respuestas:

263

Indique a Gradle que descargue el complemento de Android del repositorio de Maven Central.

Lo haces pegando el siguiente código al comienzo del archivo de compilación de Gradle:

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

Reemplace la cadena de versión 1.0.+con la última versión. Las versiones publicadas del complemento Gradle se pueden encontrar en el repositorio oficial de Maven o en la búsqueda de artefactos MVNRepository .

Grzegorz Żur
fuente
Para obtener información más actualizada, definitivamente se recomienda un número de versión superior para com.android.tools, como también lo mencionó @Elenasys en una respuesta posterior. De lo contrario, puede encontrarse con este problema: discus.gradle.org/t/…
RenniePet
1
Necesitaba agregar esto al build.gradle de mi proyecto , agregarlo a un archivo gradle de módulo no ayudó
syonip
¿Cómo sabré a qué versión de gradel he descargado? Por cierto 1.1.1 funciona para mí
Binil Jacob
2
@binil Esta es una versión del complemento Android Gradle, no el Gradle en sí. Todas las versiones se enumeran en el repositorio de Maven mvnrepository.com/artifact/com.android.tools.build/gradle Para enumerar las dependencias de compilación, ejecutegradle buildEnvironment
Grzegorz el
Esta respuesta stackoverflow.com/a/48451418/2186220 , en este hilo, funcionó para mí a partir de agosto de 2019.
Bot
28

Solo para el registro (me llevó bastante tiempo) antes de que la respuesta de Grzegorz funcionara para mí, ¡tuve que instalar el " repositorio de soporte de Android " a través del SDK Manager!

¡Instálelo y agregue el siguiente código anterior, aplique el complemento: 'android-library' en la carpeta build.gradle de actionbarsherlock!

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.+'
    }
}
Langusten Gustel
fuente
@beworker ya instalé el "repositorio de soporte de Android" pero aún el mismo problema: "Error: (1, 0) No se encontró el complemento con la identificación 'android'"
Sunishtha Singh
10

En versiones posteriores, el complemento ha cambiado de nombre a:

apply plugin: 'com.android.library'

Y como ya se mencionó en algunas de las otras respuestas, necesita las herramientas de Gradle para usarlo. Con 3.0.1, debe usar el repositorio de google, no mavenCentral o 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
fuente
6

Use mavenCentral()o jcenter()agregue en el build.gradlearchivo el script:

buildscript {
    repositories {
        jcenter()
    }

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

Agregue lo siguiente al build.gradlemódulo del proyecto:

// Archivo de compilación de nivel superior donde puede agregar opciones de configuración comunes a todos los subproyectos / módulos.

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
}
Hasan A Yousef
fuente