it-swarm.com.de

Android Studio kann plötzlich keine Symbole mehr auflösen

Android Studio 0.4.2 funktionierte einwandfrei und heute habe ich es geöffnet und fast alles war rot und die automatische Vervollständigung funktionierte nicht mehr. Ich schaue mir die Importe an und AS scheint mir mitzuteilen, dass es Android.support.v4 nicht finden kann (bietet mir die Möglichkeit, die nicht verwendeten Importe zu entfernen). (Android.support.v7 scheint jedoch in Ordnung zu sein).

Dinge, die ich versucht habe:

  • Projekt neu erstellen
  • Projekt bereinigen
  • Mit Gradle-Dateien synchronisieren
  • Projekt schließen, AS schließen und neu starten/wieder öffnen
  • Datei> Cache ungültig machen/neu starten
  • Als ich Lint untersuchte, sah ich nichts Offensichtliches
  • Überprüfen Sie alle Support-Bibliotheken auf Aktualität im SDK-Manager
  • Untersuche mein Build.gradle, obwohl keine Änderungen vorgenommen wurden und es wie gewohnt ist, so wie es die ganze Zeit funktioniert hat.

Hier ist es, falls es relevant ist:

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath 'com.Android.tools.build:gradle:0.7.+'
    }
}
apply plugin: 'Android'

repositories {
    mavenCentral()
}

Android {
    compileSdkVersion 19
    buildToolsVersion '19.0.0'

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 19
    }
}

dependencies {
    compile 'com.Android.support:support-v4:19.0.0'
    compile 'com.Android.support:gridlayout-v7:19.0.0'
    compile 'com.Android.support:appcompat-v7:19.0.0'
    compile 'com.google.Android.gms:play-services:4.0.30'
    compile project(':libraries:facebook')
    compile files('libs/core.jar')
}

Wenn ich auf "Mit Gradle synchronisieren" klicke und "Projekteinstellungen" öffne, wird eine rote Fehlermeldung angezeigt, die besagt, dass ich doppelte Bibliotheksverweise habe und die nicht verwendeten entfernen möchte. enter image description here

Mein Projekt kompiliert und läuft gut, aber ich brauche wirklich die Autovervollständigung! Hat jemand irgendwelche Vorschläge?

enter image description here

198
Daniel Wilson

Sie haben die Liste der meisten hilfreichen Dinge bereits durchgesehen, aber Sie können Folgendes versuchen:

  • Beenden Sie Android Studio
  • Sichern Sie Ihr Projekt
  • Löschen Sie alle IML-Dateien und den IDEA-Ordner
  • Starten Sie Android Studio neu und importieren Sie Ihr Projekt erneut

Übrigens sind die Fehlermeldungen, die Sie im Dialogfeld "Projektstruktur" sehen, größtenteils gefälscht.

AKTUALISIEREN:

Android Studio 0.4.3 ist im kanarischen Update-Kanal verfügbar und sollte hoffentlich die meisten dieser Probleme lösen. Es kann einige anhaltende Probleme geben; Wenn Sie sie in 0.4.3 sehen, lassen Sie es uns wissen und versuchen Sie, uns zuverlässige Schritte zur Reproduktion zu geben, damit wir sicherstellen können, dass wir uns um alle Codepfade gekümmert haben.

228
Scott Barta

Keines der oben erwähnten Dinge hat bei mir wirklich funktioniert. Aber dann habe ich diesen Menüeintrag im Dateimenü Invalidate Caches/Restart gefunden, der das Problem anscheinend behoben hat.

Ich weiß nicht genau, was im Hintergrund passiert ist, aber als Android Studio erneut gestartet wurde, stand in der Statusleiste für eine Minute Indexing..., was anscheinend Wunder gewirkt hat.

Als Referenz verwende ich Android Studio 0.5.4.

292

Gehen Sie den Link durch und es hat bei mir funktioniert.

1.) Wählen Sie im Menü auf der linken oberen Seite von Android studio die Option Datei.

2.) Wählen Sie die Option: "Cache ungültig machen/neu starten." Es öffnet sich ein Dialog.

3.) Klicken Sie auf die erste Schaltfläche mit der Option "Invalidate and Restart".

4.) Das Studio wird geschlossen und neu gestartet. Starten Sie die Indizierung des Projekts.

Es hat mein Problem gelöst:

Datei -> Cache ungültig machen/neu starten -> Ungültig machen und neu starten

Quelle: https://www.youtube.com/watch?v=FX_gCTpqhwM

54
Manmohan Soni

Android Studio 1.

  1. Öffnen Sie Moduleinstellungen
  2. Klicken Sie auf Ihr Modul im Menü Module
  3. Stellen Sie auf der Registerkarte Eigenschaften die Optionen Quellkompatibilität und Zielkompatibilität auf Ihre Java-Version ein.

Ich habe nichts anderes getan und es hat für mich funktioniert.

12

Für mich war es ein "proguard" Build-Eintrag in meinem build.gradle. Ich habe den gesamten Build-Abschnitt entfernt, dann eine erneute Synchronisierung durchgeführt und das Problem behoben.

9
Helzgate

Ich verwende Android Studio 3.1.4 und es trat ein solches Problem auf, wenn ich von meinem Entwicklungszweig mit einem niedrigeren API-Ziel zu einem anderen Zweig mit dem Ziel-API Oreo wechselte. Ich habe versucht, die erste Lösung, die funktioniert, aber es ist ziemlich schwierig, während die zweite Lösung das Problem nicht gelöst hat.

Meine Lösung Als das Problem erneut auftrat, habe ich versucht, meine App-Gradle-Datei leicht genug auf AS zu ändern, um mich aufzufordern, Dateien zu synchronisieren, und das hat den Trick getan. Dann habe ich die Änderung gelöscht.

Ich vermute, dass "Projekt mit Gradle-Dateien synchronisieren" auch funktionieren könnte, aber ich habe es selbst nicht ausprobiert

Ich hoffe es hilft

2
Aenon

Dachte, ich würde das auch da draußen werfen:

das, was für mich funktionierte, war, meine Build-Variante wieder auf eine zuvor funktionierende Variante umzustellen. Aus irgendeinem Grund hatte ich das vorher geändert (und ich vergaß warum).

in jedem Fall ist es am besten, sich zu merken, was Sie an diesem Tag geändert haben (es könnte sich um eine Kleinigkeit handeln wie das Reinigen oder das Zurückkehren zu einem vorherigen Git-Commit) ... usw.

es ist auch hilfreich, Gradle erneut zu synchronisieren und einen Neuaufbau zu erzwingen.

2
David T.

In Android Studio ist eine weitaus einfachere Lösung integriert, die in der Regel für mich funktioniert, ohne dass eine in anderen Antworten erwähnte Brute-Force-Lösung erforderlich ist. Versuchen Sie dies also zuerst: enter image description here

klicken Sie auf das Gradle-Symbol rechts neben Android Studio und dann auf das Tool "Alle Gradle-Projekte aktualisieren".

2
Amir Uval

Ich habe versucht, das Projekt zu bereinigen und dann den Cache ungültig zu machen. Was für mich funktioniert hat, war, alle meine Abhängigkeiten in build.gradle (app) auskommentieren, dann synchronisieren, dann die Abhängigkeiten wieder auskommentieren und dann erneut synchronisieren. Bob ist Dein Onkel.

1
CKP78

Ich hatte heute Morgen ein paar Stunden mit dem gleichen Problem zu kämpfen. Das Erstellen meines Projekts von der Kommandozeile aus hat für mich den Trick getan.

Genaue Schritte -

  1. Geklontes frisches Repository (keine Android Studiodateien in Repo)
  2. Errichtetes Debug-Projekt von der Kommandozeile aus (./gradlew clean assembleDebug)
  3. Öffnen Sie Android Studio, importieren Sie das Projekt

Überprüfen Sie, ob es funktioniert hat, indem Sie in Ihrem Projektordner exploded-bundles nachsehen, eine Bibliothek untersuchen und die Datei classes.jar suchen. Wenn es erweiterbar ist, ist alles in Ordnung.

bearbeiten - Ich habe festgestellt, dass es nach einer Bereinigung in Android Studio wieder kaputt gegangen ist. Wenn Sie also reinigen müssen, müssen Sie diesen Vorgang erneut durchführen.

1
Kevin Grant

Eine andere Möglichkeit besteht darin, JDK 1.7 herunterzuladen und den Pfad von Android Studio in der Fehlermeldung zu ändern. Wählen Sie dann den Ordner Home, der im Ordner Jdk 1.7 enthalten ist

1
Panos

Keine dieser Methoden hat mir in Android Studio 0.5.8 geholfen.

Meine Lösung war, das Verzeichnis ~/.AndroidStudioPreview (in Ubuntu) zu löschen. Entschuldigung, ich habe keine Ahnung, wo es in einem anderen Betriebssystem ist. In diesem Verzeichnis werden temporäre Dateien und Android Studio-Einstellungen gespeichert, sodass ich alle meine Einstellungen verpasst habe. Aber es funktioniert!

1
DmitryDzz

Habe heute das gleiche Problem. Es wurde behoben, indem der jdk-Speicherort in der Projektstruktur von \Java\jdk1.7.0_05 in \Java\jdk1.7.0_25 geändert wurde (was ich bis jetzt nicht wusste).

Ich verwende Android Studio 0.8.6.

1

Ich habe dies behoben, indem ich settings.gradle aus meinem Modul-Teilprojekt entfernt habe. Es ist ein Java Gradle-Projekt mit einer eigenen settings.gradle -Datei, die es irgendwie vermasselt.

Vielen Dank an diesen Typen: https://stackoverflow.com/a/33978721/425238

1
whitebrow

Ich habe alles versucht, was hier aufgelistet ist. Dann habe ich meine androidmanifest.xml überprüft. Ich hatte einige Probleme, die aufgrund von Ordnerumbenennungen und Paketumbenennungen nicht übereinstimmten.

0
JDOaktown

Bitte überprüfen Sie, ob Sie einen Projektpfad haben, der Sonderzeichen wie hat! (Ausrufezeichen).

In einem ähnliches Problem, das ich hatte , war dies die Hauptursache - da viele Java -Anwendungen solche Sonderzeichen nicht zu tolerieren scheinen (z. B. um eine Gradlew-Bereinigung des Terminals durchzuführen) würde fehlschlagen und eine RunTimeException auslösen.). Keine der anderen online gestellten Lösungen hatte mir geholfen. Aber sobald ich das entfernt hatte! Vom Pfad weg und hat einen sauberen Build gemacht, Android Studio hat magisch funktioniert.

0
Jim C

Ich hatte eine viel seltsamere Lösung. Für den Fall, dass jemand darauf stößt, lohnt es sich, Ihre gradle-Datei zu überprüfen. Es stellt sich heraus, dass ich beim Klonen dieses Gits und beim Ausführen von gradle eine Zeile aus meiner build.gradle (app) -Datei gelöscht habe.

dependencies {
     provided files(providedFiles)

Offensichtlich bestand das Problem hier darin, es einfach wieder hinzuzufügen und erneut mit gradle zu synchronisieren.

0
Blaze Gawlik

In meinem Multi-Modul-Projekt war das Problem, dass die Version von "com.Android.support:appcompat-v7" in Modul A "22.0.0" war, aber in B - "22.2.0".

Lösung: Stellen Sie sicher
1. Die Version der allgemeinen Bibliotheken ist bei den Modulen identisch.
2. Jedes der Module wird fehlerfrei kompiliert (versuchen Sie, jedes Modul über die CLI zu erstellen).

0
surlac

Beachten Sie, dass der Name von Dateien und speziell Ordnern zu diesem Fehler führen kann. Wenn Sie zum Beispiel einen Ordner "Helpers" haben und das Paket für Dateien in diesem Ordner "com.whatever.helpers" ist, führt dies nicht zu einem Kompilierungsfehler, aber das Android Studio schlägt fehl Laden Sie die Symbole in diesen Ordner. Ein typischer Grund dafür ist, dass Sie einen Ordner mit Großbuchstaben benennen, ihn auf Git festschreiben und später den Ordnernamen in Kleinbuchstaben ändern. Das Git-System erkennt die Änderung nicht, was zu einer Diskrepanz zwischen dem lokalen und dem Remote-Repository führt, von der nur die neuen Repository-Klone betroffen sind.

0
Eduardo Cobuci

Ich habe endlich herausgefunden, was dieses Problem verursacht.

Eigentlich sollten Sie es vermeiden, den Ordner .idea/libraries in Ihr Repository zu verschieben. Es erstellt seltsame Dinge in Android Studio, die dazu neigen, alle heruntergeladenen Bibliotheken zu entfernen.

Wenn Sie einen Commit-Verlauf haben, erstellen Sie einfach alle fehlenden Bibliotheksdateien neu und vermeiden Sie, dass sie erneut festgeschrieben werden. Entfernen Sie andernfalls einfach den gesamten Ordner .idea und importieren Sie ihn erneut in AS.

0
Adrien Cadet

Ich hatte das gleiche Problem, keine der hier aufgeführten Lösungen hat funktioniert. Das Problem waren meine Quelldateien, die sich nicht im richtigen Ordner befanden.

Die Verzeichnisstruktur MUSS lauten:

[project]\[module]\src\main\Java\[yourpackage]\[yourclass.Java]

0
Rémy DAVID

Ich hatte ein ähnliches Problem, aber ich habe in meinem Fall die folgenden Schritte ausgeführt:

1) .inside Projekt unter .idea Ordner öffnen Sie modules.xml. 2) Überprüfen Sie, ob es zwei Einträge für dieselbe IML-Datei gibt. 3) Lösche eines der doppelten Einträge und schließe Android studio oder erstelle die gradle-Datei erneut.

In meinem Fall hat es funktioniert. Ich hoffe es hilft

0
Gagandeep Singh

Ich verwende gemeinsame Einstellungen, aber Android Studio hat sich über das Editor-Symbol beschwert. Dann habe ich hinzugefügt

import Android.content.SharedPreferences.Editor;

und Symbol ist jetzt cool.

0
fullMoon

Eine weitere sehr subtile Ursache:

Die Bibliothek mit mehreren Geschmacksrichtungen sollte auf eine bestimmte Art und Weise kompiliert werden als eine normale Bibliothek mit einem einzigen Geschmack. Andernfalls kann der im Hintergrund erzeugte Symbolfehler nicht beheben.

Multi-Flavour-App basierend auf der Multi-Flavour-Bibliothek in Android Gradle

0
WindRider

versuchen Sie, Ihr build.gradle mit dem folgenden Wert zu ändern:

Android {compileSdkVersion 18 buildToolsVersion '21 .0.1 '

defaultConfig {
    minSdkVersion 18
    targetSdkVersion 18
}
0
Fakher

Ich habe es gelöst, indem ich JDK gesetzt habe. Ich erhielt ein Pop-up mit der Meldung, dass Setup JDK, als ich mit der Maus über den Fehler fuhr.

0
varghesekutty