Kırmızı hatalar gösteren Android Studio satır içi derleyici, ancak gradle ile derleme iyi çalışıyor


152

Kullanmak Android Studio Projemi kurdum Kare Tel kütüphane gereğince, bu soruya .

Build-> iyi Compile Projectçalışıyor.

2:03:10 PM Compilation completed successfully in 31 sec

Ancak, oluşturduğum Protokol Arabelleği dosyalarımdan birini açarsam, Square paketi tanınmıyor.

Android Studio satır içi derleme hataları

Başka bir belirti, Square Messagesınıfından miras alınan yöntemlerin, derleme yapıp sorunsuz çalışsalar bile düzenleyicide "Yöntem çözülemiyor" derleme hatalarını göstermesidir.

Android Studio tek satır derleme hatası

Projeme modülüm için bağımlılık eklemekten daha fazlasını yapmam gerekiyor build.gradlemu?


Kitaplıklarımı (harici olanları değil) kullanırken benzer bir sorun yaşadım, bunu nasıl düzeltebileceğimi buradan
öğrenin

Yanıtlar:


133

Aşağıdaki adımlar yardımcı olur

  1. Projenizi kapatın ve proje klasörünüzde silin project/.idea
  2. ~/.gradleKlasörü silin .

Projeyi tekrar açın. Her şey çözülmeli.


1
Bu sorun için saatler harcamak. Teşekkürler. Benim hatam,
M

2
Bu, .gradle ve .idea'yı silmem için çalıştı ve ardından geçersiz kılma ve yeniden başlatma, sorunumu çözdü. ve ardından gradle ile senkronize edin.
Pankaj

.gradleKlasörü C:\Users\Hasnain\.gradlebaşka bir dizine taşıdım . Daha sonra, android stüdyosu her sınıfta hata gösteriyor. Sonra yukarıda belirtilen adımları takip ediyorum, ardından sorun çözüldü.
hasnain_ahmad

39
.ideaDizindeki her şeyi silmek , tüm proje ayarlarını sıfırlayabileceği için kötü bir fikirdir. Sadece çıkarmadan .idea/librariesve .idea/cachesnihayet diğer tüm çözümleri denedikten sonra benim için sorun çözüldü.
fdermishin

AS 3.1.3'te çok iyi çalıştı. Önbellekleri geçersiz kılmaya bile ihtiyacım yoktu. Umarım AS şimdi daha hızlı inşa eder!
Someone Somewhere

112

Free3dom'a beni burada doğru yola götürdüğü için teşekkürler.

Teşhis

Sync Project with Gradle FilesAndroid Studio seçenek tutmak gibi görünüyor Project Structuregüncel kütüphaneleri.

gradle senkronizasyonu

Ancak benim durumumda bazı hatalar vardı:

hata bulundu

(Çok açık olmayan) bağlantının genişletilmesi ayrıntıyı gösterdi. Wire-runtime kitaplığım yanlış bir konumda gösteriliyordu:

kütüphaneler

Bu, JAR'ı bir libs klasörüne aldığım orijinal konfigürasyonumdan bir akşamdan kalma gibi görünüyordu.

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

Daha sonra onu doğrudan Maven Central'dan ( burada olduğu gibi) içe aktarılacak şekilde değiştirdim ve eski ayarın üzerine yenisi asla yazılmamış gibi görünüyor.

Çözüm

Düzeltme, kitaplık bağımlılığını Project Structureekrandan ve ardından Sync Project with Gradle Filestekrar silmektir .

Daha fazla detay

Ayrıca, kaynak için hangi yolun kullanıldığını .idea/libraries/wire_runtime_1_2_0.xmldoğrudan.

Kırık olan:

  <component name="libraryTable">
  <library name="wire-runtime-1.2.0">
    <CLASSES>
      <root url="jar://$PROJECT_DIR$/MY_MODULE/libs/wire-runtime-1.2.0.jar!/" />
    </CLASSES>
    <JAVADOC />
    <SOURCES />

Kitaplığı silip yeniden ekledikten sonra şu şekilde değiştirildi root url:

      <root url="jar://$USER_HOME$/.gradle/caches/artifacts-26/filestore/com.squareup.wire/wire-runtime/1.2.0/jar/44e7acbd5eb6f29698181dc3d67a60acf7efee80/wire-runtime-1.2.0.jar!/" />

Güncelleme

Android Studio v0.4.4 görünüşte aynı belirtilere sahip diğer hataları düzeltir , bu nedenle daha eski bir sürümünüz varsa yükseltmek isteyebilirsiniz.


3
Teşekkürler Dan J. Çözümünüzü denemeden önce, bunu daha kolay olanı denedim (bana göre) ve benim için işe yaradı: Editörün sağ tarafındaki Gradle panelini açın ("Maven Projects" ve "Commander" ın üstünde) ve yenile düğmesine tıklayın. Bu, modül ayarlarını yeniledi. Krediler @ Matteo Danieli (bkz: stackoverflow.com/a/17043001 )
almighty972

1
benim için çözen yerel jar bağımlılıklarını
silmem gerekiyor

"Projeyi Gradle dosyalarıyla senkronize et" i tıkladım ve şimdi her şey yolunda! Çok teşekkür ederim! Günümü kurtardın haha
Jorge Gabriel Siqueira

Benim için çalışmadı. Ancak .gradle ve .idea'yı silmek işe yaradı
Nabzi

Günümüzde aynı düğme, aşağı oklu bir fil simgesi olarak gösterilmektedir.
tm

88

Basit Çözüm

Bağlantıya gidin ve benim için çalıştı.

  1. FileAndroid stüdyosunun sol üst tarafındaki menüden seçeneği seçin .
  2. Seçeneği seçin: Invalidate Cache/RestartBir iletişim kutusu açılacaktır.
  3. Seçenekli ilk düğmeye tıklayın: Invalidate and Restart
  4. Android Studio'yu kapatacak ve yeniden başlatacaktır. Ayrıca, projeyi yeniden indekslemeye başlayacaktır.

Sorunumu çözdü

Git Dosya > Geçersiz Kılan Önbellek / yeniden başlatma > geçersiz ve Yeniden Başlat

Youtube için buradaki kaynak


Bu benim için çalıştı; Wifi sinyalinin zayıf olduğu bir konumda bazı programlama yapmayı denedikten sonra Android Studio her yerde hatalar gösteriyordu. (!!!) Daha sonra iyi bir wifi bağlantım olduğundan ve yeniden kurduğumdan emin oldum, ancak hatalar kaldı. Bir temizlik / yapı bile bunu çözmedi. Geçersiz kılma önbellekleri sorunu çözdü.
Someone Somewhere

Fedora'da Android Studio 2.1.3'ü kullanma. Bu çözüm benim için çalıştı. Libgdx araçları eklendi ve içe aktarmada bir hata oluştu, ancak gayet iyi derlendi. Kapatma ve yeniden açma işe yaramadı, ancak geçersiz kılma ve yeniden başlatma işlemleri iyi çalıştı.
JoeMoe1984

1
AS 3.1.4'te çalıştı! Bence tüm öneriler bunun üstesinden gelmenin doğru yolu. Android Studio'nun menü komutu gereğidir. Bu, sıfırlamayı dosya ortamında manuel olarak yapmaktan kesinlikle çok daha iyidir.
Jan Bergström

3.5.1
Neela

44

1) Gradle simgesine tıklayın (android stüdyonun sağ tarafında)

görüntü açıklamasını buraya girin

2) Yenile düğmesine tıklayın ve sorunun çözülmesini bekleyin: D

görüntü açıklamasını buraya girin


Android Studio 3.1 + üzerinde, lütfen Dosya> Önbelleği Geçersiz Kıl / Yeniden Başlat> Geçersiz Kıl ve Yeniden Başlat'a gidin.
DroidDev

17

Hala Android Studio v3.2.1 ile aynı sorunu yaşıyordum ve bir gradle senkronizasyonu çalışmıyorken sadece .ideaklasörün bu iki alt klasörünü kaldırarak (tüm .ideaklasörü silmeye gerek yok) sorunu çözdüm :

  • ./idea/caches
  • ./idea/libraries

Çoğu durumda sorunlarımı çözer. Diğer bazılarında, "Önbelleği geçersiz kılmak ve yeniden başlatmak" ya da Gradle sürümünü değiştirmek gerekebilir.
GoRoS

12

Benim için projenin .gradle ve .idea klasörlerini silmek sorunu çözdü.


12

Bunu Android stüdyonuzda yapmanız yeterlidir:

Dosya -> Önbellekleri geçersiz kıl / Yeniden Başlat -> Geçersiz Kıl ve Yeniden Başlat

Bu benim için çalıştı. ./Gradle veya ./idea klasörünü temizlemeye gerek yok


9

Bunun için benim hacky düzeltmem -

  1. Senin aç build.gradledosyayı
  2. İçindeki her şeyi kesin dependencies{}
  3. Süper güvenli geçici saklama için not defterine yapıştırın
  4. build.gradleDosyada 'Şimdi Eşitle'yi seçin
  5. Senkronizasyonun başarısız olmasını bekleyin
  6. Bağımlılıklarınızı tekrar yapıştırın
  7. Tekrar 'Şimdi Senkronize Et'

Çok fazla çözüm denedim ve bu benim için tek çözümdü.


7

Android Studio 3.1'e yükselttikten sonra bu sorunu yaşadım. Kullandığım tüm bileşenleri yükselterek sorunu çözdüm. Bu yüzden build.gradle (app) uygulamamdaki aşağıdaki girişleri değiştirdim:

  1. SDK'yı yükseltin ("compileSdkVersion 25" ten "compileSdkVersion 26" ya da bu notu okuduğunuzda belki daha üstüne):

    // compileSdkVersion 25

    compileSdkVersion 26

    Yorum: Bu değişiklik, programı bir sonraki senkronizasyon sırasında yeni sdk indirmeye / yüklemeye zorladı.

  2. Appcompat-v7'yi yükseltin:

    // uygulama 'com.android.support:appcompat-v7:25.4.0'

    uygulama 'com.android.support:appcompat-v7:26.1.0'

  3. Firebase'i yükseltin:

    // uygulama 'com.google.firebase: firebase-ads: 11.4.2'

    uygulama 'com.google.firebase: firebase-core: 12.0.1'

    uygulama 'com.google.firebase: firebase-ads: 12.0.1'

  4. PROJECT build.gradle'da google hizmetlerini yükseltin:

    // sınıf yolu 'com.google.gms: google-hizmetler: 3.1.0'

    classpath 'com.google.gms: google-hizmetleri: 3.2.0'

  5. Kademeyi yükseltin (4.4'ten 4.6'ya). Gradle-wrapper.properties'den: distributionUrl = https: //services.gradle.org/distributions/gradle-4.6-all.zip

Bu değişikliklerden sonra, projeyi temizleyin, önbelleği geçersiz kılın / yeniden başlatın, .idea / libraries içeriğini kaldırın ve yeniden senkronize edin (sipariş hakkında emin değilim, ancak TÜM bu etkinlikler sorunu benim için çözdü).


1
daha yeni sürümü olmayan diğer bileşenler ne olacak?
Amir Dadgari

Bilmiyorum. Bunlar benim projemde sahip olduğum bileşenler.
Pablo Alfonso

Merhaba Amir, resmi web sitesine göre, gradle 4.4 en son sürümdür (Mart 2018 itibariyle). Gradle 4.6'yı nerede buldunuz?
Pablo Alfonso

Gradle 4.6'nın yerini buldum. Cevabı güncelledim. Teşekkürler.
Pablo Alfonso

4
.idea / libraries içeriğini kaldırın, benim için çalışıyor. çok teşekkürler
Tram Nguyen

7

.İdea'daki kitaplıklar klasörünü silmek sorunu benim için çözdü. Bu yer almaktadır projenin kök / .idea / kütüphaneler.

Android Studio 3.1.4 kullanıyorum


2
Bu işe yaradı ama ben de geçersiz kılmalı ve yeniden başlatmalıydım.
Dan Anderson

5

Proje başarıyla derlendiğinde ancak çözümlenmemiş sınıflarla birlikte aşağıdaki adımların altında (Tüm dosyalarda tüm sınıflar kırmızı renkte olacaktır)

1. Adım. .Gradle dosyasını silin

Adım 2. .idea dosyasını silin

Adım 3. Sisteminizdeki başka bir android projesinin bulunduğu yeni Android stüdyo Penceresini açın ve Projenizi hatayla kapatın

Aşama 3 . Şimdi Android Studio -> Dosya -> Aç stüdyo araç çubuğundan Projeyi bir kez daha Aç / İçe Aktar

Not: Artık projeyi içe aktardığınızda, yeni .gradle ve yeni .idea klasörleri, derleyici tarafından çözülmüş bağımlılıklar ile otomatik olarak oluşturulacaktır.


3

Aşağıdaki yöntemle düzeltildim

Yöntem 1

Dosya> Önbelleği Geçersiz Kıl / Yeniden Başlat> Geçersiz Kıl ve Yeniden Başlat

Yöntem 2

  • Bu hatayla yalnızca belirli bir proje için karşılaşıyorsanız, O zaman bunu yapın
   1. Close current project
   2. Go to your project path C://User/Android studio project/your project
   3. Delete two files .gradle and .idea
  • Tüm projeler için bu hatayla karşılaşıyorsanız, bunu yapın
1. Close Android studio
2. Go to the file C://Users/your username/
3. Delete files .gradle , .cache ,.android, .AndroidStudio3.5

2

Yukarıdaki cevapların tümü sizin için işe yaramazsa. Bağımlılıklarınızı en son sürüme güncellemeyi deneyin. Benim için çalıştı.


2

Yukarıdaki düzeltmelerin çoğunu denedim ve aslında işe yarayan şey, tüm .AndroidStudio yapılandırma klasörlerini silmek ve ardından Android Studio'yu yeniden başlatmaktı.

  • Konum: C: \ Kullanıcılar \ kullanıcı.adınız

2

Kolay bir yol buldum

  • Uygulama seviyesini aç build.gradle
  • Hata ve Senkronizasyon gösteren bağımlılığı kaldırın.
  • Yine bağımlılık ve Senkronizasyon ekleyin.

Hata Gitti!

Önce

Önce

Sonra

Sonra



2

Görünüşe göre herkes bu sorunları aşmak için farklı bir yaklaşım kullanıyor. Diğerlerinden biraz daha az istilacı olduğunu hissettiğim başka bir tane önereceğim. Dahil ettiğim bir aar kütüphanesinden değişiklikler yaptığımda, proje için "settings.gradle" dosyasını açacağım.

Ardından, proje listesinden ana proje modülünü kesin:

include ':mainproj',

ve ardından projenizi senkronize edin. Ardından tekrar yapıştırın ve projenizi bir kez daha senkronize edin. Bunun bazı manuel silme adımlarıyla aynı olduğuna inanıyorum, ancak bu, IDE'den bunu biraz daha hızlı ve daha az acı verici bir şekilde yapmanızı sağlar.


Benim için iyi çalışıyor. Teşekkürler! @Jay Snayder
Shivam

1

Bu çözümler, Android Studio 0.5.8'deki aynı sorunu çözmeme yardımcı olmadı.

Cevabımı aynı soruya açıkladım (sanırım): https://stackoverflow.com/a/23891829/534698 ~ / .AndroidStudioPreview dizinini (Ubuntu'da) sildim. Tüm Android Studio ayarlarımı kaçırdım ama işe yarıyor.


bu benim için işe yarayan tek şey. Android Studio 1.0.2
Bobby Hargett

1

Benim durumumda, nedense, Android Eklenti Sürümü ayarlanmadı. Önbelleği temizlemeyi ve .gradle ve .idea'yı da kaldırmayı denedim, ancak işe yaramadı ve sonunda saatlerce dolaştıktan sonra bunu buldum.

Dosya> Proje Yapısı


0

Daha önce benzer bir sorun yaşadım, önbelleği geçersiz kılmak ve yeniden başlatmak sorunu çözmedi. Gradle Sync yaptım ve her şey yolunda gitti.


0

Sorunu temizleme projesi ile çözdü Build->Clean Project


0

Benim için, bir modül kitaplığındaki bir kavanozdan bahsediyorum. Kavanozdaki sembolü çözemez. Böylece durumuma çözüm buluyorum. providedYolu kullanın .

provided fileTree(include: ['xxx.jar'], dir: '../moduleX/libs')


0

Aşağıdaki adımları kullanarak aynı sorunu çözdüm:

  1. kütüphane sürümünü gradle olarak herhangi bir rastgele sayıya güncelleyin, örneğin: lib_1.0.0 -> lib_1.0.0.0

  2. gradle senkronizasyonu

  3. senkronizasyon hata gösteriyor

  4. sürüm değişikliğini geri al lib_1.0.0.0 -> lib_1.0.0

  5. gradle senkronizasyonu

Hatanın giderildiğini görmek için içe aktarmalarla java dosyasını açın.


0

Çözümlerden hiçbiri benim için işe yaramadı ... Java'yı bilgisayarımdan kaldırmaya başvurdum, kaldırma işlemini algıladığından emin olmak için android stüdyosunu çalıştırdım ve sonra tekrar yükledim.

Bu şekilde gitmeyi seçerseniz, jdk yolunu değiştirmeyi ve proje yapısında yeni yolu ayarlamayı deneyin. Bu işe yaramazsa, devam edin ve java'yı kaldırın .


0

Android Studio'yu yeniden başlatmadan önce sadece Temiz Proje ve Yeniden Oluşturma Projesi yaptım, sorunumu çözdü. Belki de Android Studio, arayüzdeki referansları güncellemiyor

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.