Hata: (1, 0) 'com.android.application' kimliğine sahip eklenti bulunamadı


303

Bu, Android Studio'daki ilk denemem. 0.8.0'ı yükledim ve 0.8.2'ye güncelledim. Bir proje oluşturulur oluşturulmaz hata mesajını alıyorum:

Hata: (1, 0) 'com.android.application' kimliğine sahip eklenti bulunamadı

C: \ Kullanıcılar \ 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'])
}

ve C: \ Kullanıcılar \ 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
Bu sorunu aldım, ama aniden en üst seviyenin build.gradlesilindiğini görüyorum :), bu yüzden gitdepodan kopyalarım ve her şey yolunda gidiyor
Mehdi Khademloo

Benim için aynı şey, benim proje düzeyi için build.gradle bir funky birleştirme sırasında sarmalayıcı özellikleri ile aynı klasöre taşındı, bu yüzden olması gereken
kökte bulamadı

Yanıtlar:


446

Güncel Yanıt (10 Nisan 2020)

Son Gradle: 6.3

Sürüm kontrolü:

  • ./gradlew -v

Güncelleme:

  • URL ayarla: ./gradlew wrapper --gradle-version=3.6.2 --distribution-type=all
  • Güncelleme: ./gradlew wrapper

En Yeni Android Gradle Eklentisi: 3.6.2

Aşağıdaki kod parçacığını eklerseniz üstüne senin bir build.gradledosyaya. Gradle derleme araçlarını güncelleyecektir.

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

Buradan daha fazla bilgi edinebilirsiniz: https://developer.android.com/studio/build/index.html ve sürüm uyumluluğu hakkında buradan: https://developer.android.com/studio/releases/gradle-plugin.html#updating-gradle ve https://dl.google.com/dl/android/maven2/index.html .

Orijinal Yanıt

Aynı hatayla karşılaştım, Gradle sürümünüzün Android Gradle Plugin ile uyumlu olduğundan emin olmanız gerekir .

Gradle'ın en son sürümü 2.0, ancak Android Gradle Plugin'i kullanmak için 1.12 kullanmanız gerekiyor .


157
Birkaç ay sonra yanıtınızı hala güncellediğiniz için +1
P1nGu1n

4
@ P1nGu1n Sorun değil! Her biri en güncel bilgileri görürse daha kolaydır.
Jared Burrows

4
@MartinPfeffer Sorun yok. Bunu güncel tutmaya devam edeceğim!
Jared Burrows

12
İyi cevap, ancak Google'ın neden Android Studio'yu bu şekilde dağıtacağını merak etmeme rağmen. Bu hata, yeni bir projeye başlarken gördüğünüz ilk şey. Yani, ne düşünüyorlardı !?
BdR

10
Android geliştirme çok aptalca şey var. Neden tüm bu gradle versiyonları ile
uğraşmalıyız

32

Bu, Üst düzey derleme dosyasını eklemeyi kaçırırsanız olabilir.

Sadece üst seviyeye build.gradle ekleyin .

Şöyle görünmeli

// 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
Tam olarak sahip olduğu şey bu.
Jared Burrows

Dosyanın mevcut içeriği ne olacak? Sadece silmek istiyor musunuz?
Tom Russell

1
Firebase eğitimini yapıyorsanız classpath 'com.android.tools.build:gradle:3.2.1' ve classpath 'com.google.gms:google-services:4.0.1'
userqwert

8

Benim durumumda, projeyi GitHub'dan indiriyorum ve Gradle dosyası eksikti. Bu yüzden sadece başarı derlemesiyle yeni bir proje oluşturuyorum . Ardından Gradle eksik dosyasını kopyalayıp yapıştırın. Ve yeniden inşa proje benim için çalışıyor.

resim açıklamasını buraya girin


Bu, diğer yöntemleri denemeden birkaç saat sonra sorunumu çözdü
zyz82

3

Kök dereceli dosya:

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

allprojects {
    repositories {
        jcenter()
    }
}

Gradle-wrapper.properties dosyası:

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

Bir saat sonra bu hata mesajı ile mücadele sorunu buldum:

Kökü yanlışlıkla build.gradledosya adına yeniden adlandırdım builde.gradle, bu yüzden Android Studio artık tanımadı.

build.gradleSorunu çözmek için yeniden adlandırmak !


2

Bunu birçok kişi için bir çözüm olarak değil , SVN'den proje almak için yanlış URL'yi belirtmek gibi basit bir hata yapan bazı insanlar için yazıyorum . Bu adamlar için tasarlanmıştır :)

Projeyi SVN'den içe aktardığımda bu oldu -> projeyi açmak için Studio tarafından otomatik komut istemi -> Gradle konumu istedi -> D: \ Software \ Android \ gradle-2.5 -> Sonra hata.

Farklı bir SVN dalındaki aynı proje, Studio'da yapılandırdığım Gradle eklentisi ve Gradle ile iyi çalışıyor. Başarısız dalda çalışmasını sağlamak için Android Gradle eklentisini ve Gradle'ı değiştirmeyi denedim.

Son olarak, bunun benim hatam olduğunu anladım: Uygulamayı bağımlı kütüphane projeleriyle birlikte almak yerine yalnızca belirli bir Uygulamayı içe aktarmayı denedim. İçe aktarma için kullandığım URL'nin sonunda Uygulama portalının adı vardı. Bir kez kaldırdım ve hem uygulama projesini hem de bağımlı projesini içeren üst dizini belirledikten sonra, her şey düzgün gitti :)


2

Hala hatayı aldım

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

Sorun: jcenter () gerekli kütüphaneye sahip değildi

Çözüm: Google'ı () repo olarak ekleyin

buildscript {
    repositories {
        google()
        jcenter()

    }
    dependencies {

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

1

Diğer cevaplar benim için işe yaramadı, sanırım ButterKnife ve 3.0.0 alpha5 arasında yanlış bir şeyler oluyor .

Ancak, BUtterKnife veya 3.0.0 alpha5 herhangi bir cümleye açıklama eklediğimde normal çalıştığını buldum.

Bu nedenle, sadece çoğaltma veya çakışmadan kaçınmalısınız .


ButterKnife veya 3.0.0 alpha5 gibi herhangi bir cümleye açıklama eklediğimde normal çalışır.
Lancer.Yan

Lütfen burada bir soru ile cevaplamak yerine yeni bir soru yapın.
ישו אוהב אותך

Her alfa sürümünün üretime hazır olmadığını unutmayın . Kodunuzda alfa sürümünü kullanmamalısınız.
ישו אוהב אותך

Üzgünüm ... Bu soruyu bilgisayarımda
çözdüm

Belki bu alışılmadık yöntem yardımcı olacaktır. Herhangi bir açıklamalı Android Studio 3.0.0 alpha5 yardımcı olacaktır.
Lancer.Yan

1

Yazımı kontrol et, benimki 'com.android.a p lisansı' idi


1

Gelecekte başvurmak üzere: Benim için bu sorun yalnızca Android Studio'yu yönetici olarak çalıştırmama nedeniyledir. Windows'ta kısayolu her zaman yönetici olarak çalışacak şekilde yapılandırdım, ancak Android Studio'yu yeniden yükledikten sonra kısayol değiştirildi ve bu nedenle yönetici hakları olmadan koştu. Bu, bu sorudaki de dahil olmak üzere birçok opak hataya neden oldu.


0

Ben IntelliJ IDEA 13.1.5 kullanıyorum ve ben Picasso ve Retrofit sürümlerini değiştirdikten sonra aynı sorunla karşı karşıya olduğu dependenciesiçinde build.gradledosyanın. Birçok çözüm kullanmayı denedim, ama sonuçsuz. Sonra projemi uzak git'ten klonladım (burada bağımlılık sürümlerini değiştirmeden önce ittim) ve işe yaradı! Bundan sonra mevcut projeyi kapattım ve eski projeyi Gradle dosyasından tekrar IntelliJ IDEA'ya aktardım ve çok çalıştı! Bu yüzden, IDEA, Gradle ve Android eklentisinin kesişiminde garip bir hata olduğunu düşünüyorum. Umarım bu bilgiler IDEA kullanıcıları veya başkaları için yararlı olabilir.


Belirli bir kod örneğiyle verebileceğiniz teknik bir cevap var mı?
IgorGanapolsky

0

Bu sadece Android Studio 1.3.2'yi kullanarak başıma geldi , ancak projeyi yeni oluşturduğumdan sildim ve tekrar oluşturdum.
Görünüşe göre Android Studio tarafından ilk kez düzgün bir şekilde oluşturulmamış, hatta beklendiği gibi proje klasörleri değil.


Android Studio sürümü eklenti sürümüyle eşleşmelidir.
Jared Burrows

0

Modül dizininde android eklentisi 1.2.3 ile bir modül görevi çalıştırırsanız, sorun ortaya çıkar. Bunu dene:

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

Bu komut çok hacky ve Gradle 1.2.3 son derece eski.
Jared Burrows

0

Bunu görebileceğiniz not dosyanıza gidin:

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

Ve bunu değiştirin classpath:

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

Hayır gradle-experimental. "Deneysel" dir. Bunun soru ile ilgisi yok.
Jared Burrows

@JaredBurrows OP'nin sorusundaki hata gradle-experimental ile de olabilir. Bugün bana oluyor. Bununla birlikte, VladimirKulyk, gradle-experimental kullanmanın sadece NDK yapıları için önerildiğini bilmelidir.
IgorGanapolsky


0

build.gradleGradle'ın en son sürümüne güncellemek için üst düzeyimde aşağıdaki değişikliği yaptıktan sonra bu hata mesajını aldım :

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

Düşmanca bir işyeri vekilinin arkasına bağlıyken değişikliği aptalca yaptım. Proxy neden oldu.jar , yeni sürüm sürümünün dosyalarının bozulmasına neden oldu. Bu, kavanozların alışılmadık bir boyutta olup olmadıklarını veya sıkıştırılmamış olup olmadıklarını görmek için incelenerek doğrulanabilir.

Hatayı düzeltmek için evde ağıma bağlandım (bir proxy'nin arkasında değil) ve Terminal'den yenileme bağımlılıkları yaptım:

./gradlew --refresh-dependencies

Bu, yeni sürüm sürümünün yeniden indirilmesine neden oldu ve hata artık oluşmuyor.


0

Bu, her ikisine de sahip olduğunuzda settings.gradleve settings.gradle.ktsdosyalar proje kök dizininde bulunduğunda da olabilir (muhtemelen aynı modül dahil edilmiştir). Bu dosyalardan yalnızca birine sahip olmalısınız.


Doğru. Projemi build.gradle ile doğrudan içe aktardığımda başıma geldi, yinelenen Gradle ve özellikler dosyası buldum
Okikioluwa

0

Proje düzeyinde build.gradle dosyasında bu satırı değiştirdim

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

Bununla birlikte

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

Bu satırların her ikisini de ekledikten ve senkronize ettikten sonra her şey yolunda gitti. Umarım bu birine yardımcı olur.


-1

module app build.gradle dosyası

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

Bu durumda aşağıdaki kodu kontrol edin

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

ve gradle-wrapper.propertiesproje dizininizin içinde aşağıdan kontrol edin disctributionUrl:

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

Bunlar birbiriyle uyumlu değilse, bu sorunla karşılaşırsınız.

İçin com.android.tools.build:gradle:1.5.bir sürümü gerekir gibi yüksek bir sürümüne geçerseniz en az 2.8 ama com.android.tools.build:gradle:2.1.0o zaman 2,9 için gradle güncellemeniz gerekir ve bu yukarıda değiştirerek yapılabilir distributionUrlaşağıdaki gibi 2,9 veya daha yüksek gradle-wrapper.properties içinde

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

-1

Uygulamayı oluştururken http ve https proxy'sini doğru bir şekilde yerleştirdiğinizden emin olun.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.