Android Studio: plug-in com o ID 'android-library' não encontrado

149

Eu tenho tentado fazer com que o ActionBarSherlock funcione e tenha algum problema. Um problema que me deparei é a seguinte mensagem ao tentar compilá-lo:

Plugin with id 'android-library' not found

Especificamente:

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.

Estou tratando isso como um problema de ABS em um thread separado, então aqui estou curioso para resolver o problema geral de:

Plugin with id 'android-library' not found

Aqui está o 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']
    }
  }
}

Você pode ajudar?

Michael
fonte

Respostas:

263

Instrua o Gradle a baixar o plug-in Android do repositório Maven Central.

Você faz isso colando o seguinte código no início do arquivo de construção do Gradle:

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

Substitua a string 1.0.+da versão pela versão mais recente. Versões liberadas do plugin Gradle podem ser encontradas no repositório oficial do Maven ou na pesquisa de artefatos do MVNRepository .

Grzegorz Żur
fonte
Para obter informações mais atualizadas, é definitivamente recomendável um número de versão mais alto para com.android.tools, como também mencionado por @Elenasys em uma resposta posterior. Caso contrário, você pode executar para esse problema: discuss.gradle.org/t/...
RenniePet
1
Eu precisava para adicionar isso para o meu projeto build.gradle, adicioná-lo ao arquivo Gradle um módulo não ajuda
syonip
Como vou saber para qual versão gradel eu baixei? BTW 1.1.1 funciona para mim
Binil Jacob
2
@binil Esta é uma versão do plugin Android Gradle e não do próprio Gradle. Todas as versões estão listadas no repositório Maven mvnrepository.com/artifact/com.android.tools.build/gradle Para dependências lista de compilação executargradle buildEnvironment
Grzegorz Zur
Esta resposta stackoverflow.com/a/48451418/2186220 , neste thread em si, funcionou para mim a partir de agosto de 2019.
Bot
28

Só para constar (demorei um pouco) antes que a resposta de Grzegorzs funcionasse, eu tive que instalar o " repositório de suporte do Android " através do SDK Manager!

Instale-o e adicione o seguinte código acima, aplique o plugin: 'android-library' no build.gradle da pasta actionbarsherlock!

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:1.0.+'
    }
}
Langusten Gustel
fonte
@beworker i já instalado "repositório android apoio", mas ainda mesmo problema: "Erro: (1, 0) Plugin com id 'android' não encontrado"
Sunishtha Singh
10

Nas versões posteriores, o plugin mudou o nome para:

apply plugin: 'com.android.library'

E, como já mencionado por algumas das outras respostas, você precisa das ferramentas de classificação para usá-lo. Usando o 3.0.1, você deve usar o repositório do google, não o mavenCentral ou 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
fonte
6

Use mavenCentral()ou jcenter()adicione no build.gradlearquivo o script:

buildscript {
    repositories {
        jcenter()
    }

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

Adicione abaixo ao build.gradlemódulo do projeto:

// Arquivo de construção de nível superior, onde você pode adicionar opções de configuração comuns a todos os subprojetos / 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
fonte