Errore: (1, 0) Plug-in con ID 'com.android.application' non trovato


303

Questo è il mio primo tentativo su Android Studio. Ho installato 0.8.0 e aggiornato a 0.8.2. Non appena viene creato un progetto, viene visualizzato il messaggio di errore:

Errore: (1, 0) Plug-in con ID 'com.android.application' non trovato

C: \ Users \ 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: \ Users \ 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()
    }
}

2
Ho avuto questo problema, ma improvvisamente vedo che il livello superiore è build.gradlestato cancellato :), quindi lo copio dal gitrepository e ogni cosa va bene
Mehdi Khademloo

Stessa cosa per me, il mio build.gradle a livello di progetto è stato spostato nella stessa cartella delle proprietà del wrapper durante un'unione funky, quindi non è stato trovato nella radice dove dovrebbe essere
RESTfulGeoffrey

Risposte:


446

Risposta aggiornata (10 aprile 2020)

Ultimo grado: 6.3

Verifica della versione:

  • ./gradlew -v

Come aggiornare:

  • Imposta URL: ./gradlew wrapper --gradle-version=3.6.2 --distribution-type=all
  • Aggiornare: ./gradlew wrapper

Ultimo plug-in Android Gradle: 3.6.2

Se aggiungi il seguente frammento di codice nella parte superiore del build.gradlefile. Gradle aggiornerà gli strumenti di costruzione.

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'
    }
}

Maggiori informazioni qui: https://developer.android.com/studio/build/index.html e sulla compatibilità delle versioni qui: https://developer.android.com/studio/releases/gradle-plugin.html#updating-gradle e https://dl.google.com/dl/android/maven2/index.html .

Risposta originale

Ho avuto lo stesso errore, devi assicurarti che la tua versione Gradle sia compatibile con il tuo Plugin Android Gradle.

L'ultima versione di Gradle è 2.0 ma è necessario utilizzare 1.12 per utilizzare il plug-in Android Gradle.


157
+1 per l'aggiornamento della risposta ancora qualche mese dopo
P1nGu1n

4
@ P1nGu1n Nessun problema! È più facile se tutti vedono le informazioni più aggiornate.
Jared Burrows,

4
@MartinPfeffer Nessun problema. Continuerò a tenerlo aggiornato!
Jared Burrows,

12
Buona risposta, anche se non posso fare a meno di chiedermi perché Google avrebbe distribuito Android Studio in questo modo .. Questo errore è la prima cosa che vedi all'avvio di un nuovo progetto. Voglio dire, cosa stavano pensando !?
BdR,

10
Lo sviluppo Android ha molte cose stupide. Perché dovremmo preoccuparci di tutto ciò che riguarda questa versione
graduale

32

Questo può accadere se si perde l'aggiunta del file di build di livello superiore.

Aggiungi build.gradle ai massimi livelli.

Dovrebbe sembrare come questo

// 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()
    }
}


2
Questo è esattamente quello che ha.
Jared Burrows,

E i contenuti esistenti del file? Eliminali e basta?
Tom Russell,

1
Se stai facendo il tutorial di Firebase di cui hai bisogno classpath 'com.android.tools.build:gradle:3.2.1' e classpath 'com.google.gms:google-services:4.0.1'
userqwert

8

Nel mio caso, scarico il progetto da GitHub e mancava il file Gradle. Quindi ho appena creato un nuovo progetto con successo costruito . Quindi copia e incolla il file mancante di Gradle. E ricostruire il progetto funziona per me.

inserisci qui la descrizione dell'immagine


questo ha risolto il mio problema dopo diverse ore di tentativi con altri metodi
zyz82,

3

File di livello radice:

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

allprojects {
    repositories {
        jcenter()
    }
}

File 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

3

Ho riscontrato il problema dopo un'ora alle prese con questo messaggio di errore:

Ho rinominato accidentalmente la radice build.gradlein nome file builde.gradle, quindi Android Studio non l'ha riconosciuta più.

Rinominandolo per build.gradlerisolvere il problema!


2

Sto scrivendo questo non come una soluzione pensata per molti, ma per alcune persone che potrebbero commettere un semplice errore come specificare l'URL sbagliato per l'importazione di progetti da SVN . È destinato a quei ragazzi :)

Questo è successo a me quando ho importato il progetto da SVN -> richiesta automatica di Studio di aprire il progetto -> Ha richiesto la posizione Gradle -> D: \ Software \ Android \ gradle-2.5 -> Quindi l'errore.

Lo stesso progetto in un ramo SVN diverso funziona perfettamente con il plugin Gradle e Gradle che ho configurato in Studio. Ho provato a cambiare il plug-in Android Gradle e Gradle per farlo funzionare sul ramo errato senza successo.

Alla fine, ho capito che era il mio errore seguente: ho provato a importare un'applicazione specifica da sola invece di importare l'applicazione insieme a progetti di librerie dipendenti. L'URL che ho usato per l'importazione inizialmente aveva il nome del Porject dell'applicazione alla fine. Una volta rimosso, e specificato la directory padre che conteneva sia il progetto dell'applicazione che il suo progetto dipendente, tutto è andato liscio :)


2

Ho ancora ricevuto l'errore

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

Problema: jcenter () non aveva le librerie richieste

Soluzione: aggiungere google () come repository

buildscript {
    repositories {
        google()
        jcenter()

    }
    dependencies {

        classpath "com.android.tools.build:gradle:3.0.0"
    }
}

1

Le altre risposte non hanno funzionato per me, immagino che accada qualcosa di sbagliato tra ButterKnife e 3.0.0 alpha5 .

Tuttavia, ho scoperto che quando ho annotato una qualsiasi frase, BUtterKnife o 3.0.0 alpha5, funziona normalmente.

Quindi, dovresti semplicemente evitare la duplicazione o il conflitto .


Quando ho annotato una frase qualsiasi, ButterKnife o 3.0.0 alpha5 , funziona normalmente.
Lancer

Si prega di fare una nuova domanda invece di rispondere qui con una domanda.
ישו אוהב אותך

Ricorda che ogni versione alpha non è pronta per la produzione. Non devi usare la versione alfa nel tuo codice.
ישו אוהב אותך

Scusa ... ho risolto questa domanda sul mio computer, ma non riesco a capire PERCHÉ ....
Lancer

Forse questo metodo non convenzionale aiuterà. Annotato qualcuno aiuterà in Android Studio 3.0.0 alpha5.
Lancer

1

Controlla l'ortografia, la mia era "com.android.a p lication"


1

Per riferimento futuro: per me, questo problema è stato causato esclusivamente dal fatto che non stavo eseguendo Android Studio come amministratore. Avevo il collegamento su Windows configurato per funzionare sempre come amministratore, ma dopo aver reinstallato Android Studio, il collegamento è stato sostituito e quindi funzionava senza diritti di amministratore. Ciò ha causato molti errori opachi, incluso quello in questa domanda.


0

Stavo usando IntelliJ IDEA 13.1.5 e ho riscontrato lo stesso problema dopo aver modificato le versioni di Picasso e Retrofit dependenciesnel build.gradlefile. Ho provato a usare molte soluzioni, ma senza risultato. Quindi ho clonato il mio progetto da git remoto (dove l'ho spinto prima di cambiare le versioni delle dipendenze) e ha funzionato! Dopo di che ho appena chiuso il progetto corrente e importato di nuovo il vecchio progetto dal file Gradle in IntelliJ IDEA e ha funzionato anche! Quindi, penso che sia stato uno strano bug nell'intersezione tra IDEA, Gradle e plugin Android. Spero che queste informazioni possano essere utili per gli utenti IDEA o per chiunque altro.


C'è una risposta tecnica che puoi dare con un esempio di codice specifico?
IgorGanapolsky,

0

Questo mi è appena successo con Android Studio 1.3.2 , tuttavia, poiché avevo appena creato il progetto, l'ho eliminato e creato di nuovo.
Sembra che non sia stato creato correttamente da Android Studio la prima volta, nemmeno le cartelle del progetto dove previsto.


La versione di Android Studio deve corrispondere alla versione del plug-in.
Jared Burrows

0

Se si esegue un'attività del modulo con il plug-in Android 1.2.3 nella directory del modulo, viene visualizzato il problema. Prova questo:

../gradlew -b ../build.gradle  -c ../settings.gradle  :module:xxx

Questo comando è molto confuso e Gradle 1.2.3 è estremamente vecchio.
Jared Burrows,

0

Vai al tuo file di valutazione dove puoi vedere questo:

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 cambia classpathin questo:

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
    }
}

No. gradle-experimentalè "sperimentale". Questo non ha nulla a che fare con la domanda.
Jared Burrows,

@JaredBurrows L'errore nella domanda di OP può accadere anche con il livello sperimentale. Mi sta succedendo oggi. Tuttavia, VladimirKulyk dovrebbe sapere che l'uso di Gradle-sperimentale è consigliato solo per build NDK.
IgorGanapolsky,


0

Ho ricevuto questo messaggio di errore dopo aver apportato la seguente modifica nel mio livello principale build.gradleper aggiornare all'ultima versione di Gradle:

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

Ho fatto stupidamente la modifica mentre ero collegato dietro un proxy di lavoro ostile. Il proxy ha causato la .jarcorruzione dei file per la nuova versione di Gradle. Questo può essere verificato controllando i barattoli per vedere se hanno dimensioni insolite o se possono essere decompressi.

Al fine di correggere l'errore, mi sono connesso alla mia rete a casa (che non è dietro un proxy) e ho fatto un aggiornamento delle dipendenze dal Terminale:

./gradlew --refresh-dependencies

Ciò ha causato il download della versione più recente di Gradle e l'errore non si verifica più.


0

Ciò può accadere anche quando sono presenti entrambi settings.gradlee i settings.gradle.ktsfile sono presenti nella directory principale del progetto (possibilmente con lo stesso modulo incluso). Dovresti avere solo uno di questi file.


Corretta. Questo mi è successo quando ho importato il mio progetto direttamente con build.gradle, ho trovato il file duplicato Gradle e proprietà
Okikioluwa,

0

Nel file build.gradle a livello di progetto, ho sostituito questa riga

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

con questo

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

Dopo aver aggiunto entrambe le linee e sincronizzato, tutto è andato bene. Spero che questo possa aiutare qualcuno.


-1

file build.gradle dell'app modulo

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()
    }
}

-1

In questo caso, controllare il codice seguente

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

e gradle-wrapper.propertiesnella directory del tuo progetto controlla di seguito disctributionUrl:

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

Se questi non sono compatibili tra loro, si finisce in questo problema.

Perché com.android.tools.build:gradle:1.5.hai bisogno di una versione almeno 2.8 ma se passi a una versione com.android.tools.build:gradle:2.1.0successiva come allora devi aggiornare il tuo gradle a 2.9 e sopra questo può essere fatto cambiando distributionUrlin gradle-wrapper.properties a 2.9 o successivo come sotto

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

-1

Assicurati di inserire correttamente il proxy http e https quando crei l'app

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.