Erro: (1, 0) Plug-in com o ID 'com.android.application' não encontrado

303

Esta é minha primeira tentativa no Android Studio. Instalei o 0.8.0 e atualizei para 0.8.2. Assim que um projeto é criado, recebo a mensagem de erro:

Erro: (1, 0) Plug-in com o ID 'com.android.application' não encontrado

C: \ Usuários \ Bob \ AndroidStudioProjects \ HelloAgain6 \ app \ build.gradle

apply plugin: 'com.android.application'

android {
    compileSdkVersion 20
    buildToolsVersion "20.0.0"

    defaultConfig {
        applicationId "com.example.bob.helloagain6"
        minSdkVersion 15
        targetSdkVersion 20
        versionCode 1
        versionName "1.0"
    }
    buildTypes {
        release {
            runProguard false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

e C: \ Usuários \ Bob \ AndroidStudioProjects \ HelloAgain6 \ build.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:0.12.+'

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

allprojects {
    repositories {
        jcenter()
    }
}
Bob Kusik
fonte
2
Eu tenho esse problema, mas de repente eu vejo o nível superior build.gradlefoi eliminada :), então eu copiá-lo do gitrepositório e cada coisas vai para a direita
Mehdi Khademloo
A mesma coisa para mim, meu build.gradle para o nível do projeto foi movido para a mesma pasta que as propriedades do wrapper durante uma mesclagem descolada, por isso não foi encontrado na raiz onde deveria estar
RESTfulGeoffrey

Respostas:

446

Resposta atualizada (10 de abril de 2020)

Classificação mais recente: 6.3

Verificação de versão:

  • ./gradlew -v

Como atualizar:

  • Definir URL: ./gradlew wrapper --gradle-version=3.6.2 --distribution-type=all
  • Atualizar: ./gradlew wrapper

Plugin Android Gradle mais recente: 3.6.2

Se você adicionar o seguinte snippet de código na parte superior do seu build.gradlearquivo. Gradle atualizará as ferramentas de construção.

buildscript {
    repositories {
        google() // For Gradle 4.0+
        maven { url 'https://maven.google.com' } // For Gradle < 4.0
    }

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

Leia mais aqui: https://developer.android.com/studio/build/index.html e sobre a compatibilidade de versões aqui: https://developer.android.com/studio/releases/gradle-plugin.html#updating-gradle e https://dl.google.com/dl/android/maven2/index.html .

Resposta original

Eu tive esse mesmo erro, você precisa se certificar de que sua versão do Gradle é compatível com o plug-in do Android Gradle.

A versão mais recente do Gradle é 2.0, mas você precisa usar a 1.12 para usar o Android Gradle Plugin.

Jared Burrows
fonte
157
+1 para ainda atualizar a sua resposta, alguns meses depois
P1nGu1n
4
@ P1nGu1n Sem problemas! É mais fácil se todos virem as informações mais atualizadas.
Jared Burrows
4
@MartinPfeffer Sem problemas. Vou continuar mantendo isso atualizado!
Jared Burrows
12
Boa resposta, apesar de não poder deixar de me perguntar por que o Google implantaria o Android Studio assim. Esse erro é a primeira coisa que você vê ao iniciar um novo projeto. Quero dizer, o que eles estavam pensando !?
BdR 27/03
10
O desenvolvimento do Android tem muitas coisas estúpidas. Por que devemos ser incomodado com toda essa coisa versões Gradle
USER25
32

Isso pode acontecer se você deixar de adicionar o arquivo de compilação de nível superior.

Basta adicionar build.gradle ao nível superior.

Deve ficar assim

// Top-level build file where you can add configuration options common to all sub-projects/modules.
buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.xx.y'
    }
}

allprojects {
    repositories {
        mavenCentral()
    }
}

Cinza
fonte
2
Isso é exatamente o que ele tem.
Jared Burrows
E o conteúdo existente do arquivo? Apenas exclua-os?
8338 Tom Russell
1
Se você estiver fazendo o tutorial do classpath 'com.android.tools.build:gradle:3.2.1'classpath 'com.google.gms:google-services:4.0.1'
firebase
8

No meu caso, eu baixo o projeto do GitHub e o arquivo Gradle estava ausente. Então, acabei de criar um novo projeto com sucesso . Em seguida, copie e cole o arquivo ausente Gradle. E recriar o projeto está funcionando para mim.

insira a descrição da imagem aqui

Md Imran Choudhury
fonte
isso resolveu o meu problema depois de várias horas de tentar outros métodos
zyz82
3

Arquivo raiz-gradle:

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

allprojects {
    repositories {
        jcenter()
    }
}

Arquivo Gradle-wrapper.properties:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-x.x-all.zip
Gennadiy Ryabkin
fonte
3

Encontrei o problema após uma hora lutando com esta mensagem de erro:

Renomeei acidentalmente a raiz build.gradlepara nome do arquivo builde.gradle, para que o Android Studio não a reconhecesse mais.

Renomeá- lo para build.gradleresolver o problema!

Lorenzo Barbagli
fonte
2

Estou escrevendo isso não como uma solução destinada a muitos, mas a algumas pessoas que podem cometer um erro simples, como especificar o URL errado para importar projetos do SVN . Destina-se a esses caras :)

Isso aconteceu comigo quando eu importei o projeto do SVN -> prompt automático do Studio para abrir o projeto -> Ele solicitou a localização de Gradle -> D: \ Software \ Android \ gradle-2.5 -> Em seguida, o erro.

O mesmo projeto em um ramo SVN diferente funciona bem com o plug-in Gradle e o Gradle que eu configurei no Studio. Tentei alterar o plug-in Android Gradle e o Gradle para fazê-lo funcionar no ramo incorreto sem sucesso.

Por fim, descobri que era o meu seguinte erro: tentei importar um aplicativo específico sozinho, em vez de importá-lo junto com projetos de bibliotecas dependentes. O URL que eu usei para importação tinha inicialmente o nome do objeto do aplicativo no final. Depois que eu o removi e especifiquei o diretório pai que continha o projeto do aplicativo e o projeto dependente, tudo correu bem :)

granada
fonte
2

Eu ainda tenho o erro

 Could not find com.android.tools.build:gradle:3.0.0.

Problema: jcenter () não tinha as bibliotecas necessárias

Solução: adicione google () como repositório

buildscript {
    repositories {
        google()
        jcenter()

    }
    dependencies {

        classpath "com.android.tools.build:gradle:3.0.0"
    }
}
Simon Fakir
fonte
1

As outras respostas não funcionaram para mim, acho que algo de errado acontece entre o ButterKnife e o 3.0.0 alpha5 .

No entanto, descobri que, quando anotei qualquer frase, BUtterKnife ou 3.0.0 alpha5, ela funciona normalmente.

Portanto, você deve apenas evitar a duplicação ou conflito .

Lancer.Yan
fonte
Quando eu anotei qualquer frase, ButterKnife ou 3.0.0 alpha5 , ela funciona normalmente.
Lancer.Yan
Faça uma nova pergunta, em vez de responder aqui com uma pergunta.
ישו אוהב אותך
Lembre-se de que toda versão alfa não está pronta para produção. Você não deve usar a versão alfa no seu código.
ישו אוהב אותך
Desculpe ... I resolvido esta questão no meu computador, mas eu não consigo entender por ....
Lancer.Yan
Talvez esse método não convencional ajude. Anotado qualquer um ajuda no Android Studio 3.0.0 alpha5.
Lancer.Yan
1

Verifique a ortografia, a minha era 'com.android.a p lication'

kreker
fonte
1

Para referência futura: para mim, esse problema foi causado exclusivamente pelo fato de eu não estar executando o Android Studio como administrador. Eu tinha o atalho no Windows configurado para sempre executar como administrador, mas depois de reinstalar o Android Studio, o atalho foi substituído e, portanto, foi executado sem direitos de administrador. Isso causou muitos erros opacos, incluindo o desta pergunta.

Wouter Florijn
fonte
0

Eu estava usando o IntelliJ IDEA 13.1.5 e enfrentei o mesmo problema depois de alterar as versões do Picasso e Retrofit dependenciesno build.gradlearquivo. Eu tentei usar muitas soluções, mas sem resultado. Então eu clonei meu projeto do git remoto (onde o empurrei antes de alterar as versões das dependências) e funcionou! Depois disso, fechei o projeto atual e importei o projeto antigo do arquivo Gradle para o IntelliJ IDEA novamente e funcionou também! Então, acho que foi um bug estranho na interseção do plugin IDEA, Gradle e Android. Espero que esta informação possa ser útil para usuários da IDEA ou qualquer outra pessoa.

John Smith
fonte
Existe uma resposta técnica que você pode dar com um exemplo de código específico?
IgorGanapolsky
0

Isso aconteceu comigo usando o Android Studio 1.3.2 , no entanto, desde que acabei de criar o projeto, excluí-o e criei-o novamente.
Parece que não foi criado corretamente pelo Android Studio pela primeira vez, nem mesmo as pastas do projeto, conforme o esperado.

Edison Spencer
fonte
A versão do Android Studio deve corresponder à versão do plug-in.
Jared Burrows
0

Se você executar uma tarefa do módulo com o plug-in Android 1.2.3 no diretório module, o problema será exibido. Tente o seguinte:

../gradlew -b ../build.gradle  -c ../settings.gradle  :module:xxx
Victor Choy
fonte
Este comando é muito hacky e o Gradle 1.2.3 é extremamente antigo.
Jared Burrows
0

Vá para o seu arquivo de notas, onde você pode ver isso:

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


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

E mude classpathpara isso:

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
//        classpath 'com.android.tools.build:gradle:2.1.0'
        classpath 'com.android.tools.build:gradle-experimental:0.7.0-alpha1'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}
Volodymyr Kulyk
fonte
No. gradle-experimentalé "experimental". Isso não tem nada a ver com a pergunta.
Jared Burrows
@JaredBurrows O erro na pergunta do OP também pode acontecer com o gradle-experimental. Está acontecendo comigo hoje. No entanto, VladimirKulyk deve saber que o uso de gradle-experimental é recomendado apenas para compilações de NDK.
IgorGanapolsky
0

Recebi esta mensagem de erro depois de fazer a seguinte alteração no meu nível superior build.gradlepara atualizar para a versão mais recente do gradle:

//classpath 'com.android.tools.build:gradle:2.3.2' old
classpath 'com.android.tools.build:gradle:2.3.3' //new

Eu tolamente fiz a alteração enquanto estava conectado atrás de um proxy hostil no local de trabalho. O proxy causou a .jarcorrupção dos arquivos da nova versão do gradle. Isso pode ser verificado inspecionando os frascos para ver se eles têm um tamanho incomum ou se podem ser descompactados.

Para corrigir o erro, conectei-me à minha rede em casa (que não está atrás de um proxy) e atualizei as dependências do Terminal:

./gradlew --refresh-dependencies

Isso fez com que a versão mais recente do gradle fosse baixada novamente e o erro não ocorre mais.

David Rawson
fonte
0

Isso também pode acontecer quando você tem ambos settings.gradlee os settings.gradle.ktsarquivos estão presentes no diretório raiz do projeto (possivelmente com o mesmo módulo incluído). Você deve ter apenas um desses arquivos.

Igor Wojda
fonte
Corrigir. Isso aconteceu comigo quando importei meu projeto diretamente com o build.gradle, encontrei o Gradle e o arquivo de propriedades duplicados
Okikioluwa
0

No arquivo build.gradle no nível do projeto, substituí esta linha

classpath 'com.android.tools.build:gradle:3.6.3'

com este

classpath 'com.google.gms:google-services:4.3.3'

Depois de adicionar as duas linhas e sincronizar, tudo ficou bem. Espero que isso ajude alguém.

codersaif
fonte
-1

arquivo build.gradle do aplicativo de módulo

apply plugin: 'com.android.application'

model{


    android {
        compileSdkVersion 23
        buildToolsVersion  "23.0.2"

        defaultConfig.with {
            applicationId "com.iamsafe"
            minSdkVersion 15
            targetSdkVersion 23





        }
     buildTypes {
            debug {
                minifyEnabled = false
                useProguard = true
                proguardFiles.add(file('proguard-rules.txt'))


            }
        }



    }

}



dependencies {
    compile 'com.android.support:support-v4:23.0.2'
    compile files('libs/asmack-android-8-0.8.10.jar')
    compile files('libs/commons-io-2.0.1.jar')
    compile files('libs/httpclient-osgi-4.2.1-sources.jar')
    compile files('libs/httpcore-4.3.2.jar')
    compile files('libs/httpmime-4.1.2.jar')
}


project build.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:2.10'
    }
}

allprojects {
    repositories {
        jcenter()
    }
}
Mansuu ....
fonte
-1

Neste caso de problemas, verifique o código abaixo

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

e gradle-wrapper.propertiesdentro do diretório do projeto, verifique abaixo disctributionUrl:

distributionUrl=https\://services.gradle.org/distributions/gradle-2.9-all.zip

Se estes não forem compatíveis entre si, você acaba nesta edição.

Para com.android.tools.build:gradle:1.5.você precisar de uma versão pelo menos 2.8, mas se você mudar para uma versão superior com.android.tools.build:gradle:2.1.0, precisará atualizar seu gradle para 2.9 e acima, isso pode ser feito alterando distributionUrlgradle-wrapper.properties para 2.9 ou superior como abaixo

distributionUrl=https\://services.gradle.org/distributions/gradle-2.10-all.zip
maruti060385
fonte
-1

Apenas certifique-se de colocar o proxy http e https corretamente ao criar o aplicativo

Diogo Miranda
fonte