it-swarm.com.de

Eclipse-Fehler: R kann nicht in eine Variable aufgelöst werden

Ich erhalte diesen klassischen Fehler in der Eclipse-IDE. Ich bin gelangweilt von Eclipse's Bugs. Sie machen mich verrückt.

Ich habe fast alles ausprobiert, was als Lösung vorgeschlagen wurde (von Googling). Keiner von ihnen hat funktioniert.

Mein Projekt funktionierte normal, aber keine Codeänderungen.

Ich sehe, dass meine Codeänderungen nicht auf meine App (auf AVD) wirken, dann habe ich mein Projekt bereinigt (unter Project > Clean...). Die Datei R.Java War verschwunden und der Ordner res war leer.

Jetzt erhalte ich diesen Fehler: R cannot be resolved to a variable.

Was sollte ich tun?

Außerdem habe ich versucht, das Projekt zu löschen und erneut mit Android Project from Existing Code Zu erstellen, das ich zuvor gesichert habe. Es gibt bereits den gleichen Fehler nach der Reinigung.

Irgendwelche Ideen würden geschätzt.

53
JustWork

Ich gehe davon aus, dass Sie ADT mit Version 22 aktualisiert haben und die R.Java-Datei nicht generiert wird.

Wenn dies der Fall ist, dann ist hier die Lösung:

Ich hoffe, Sie wissen, dass Android Studio Gradle Building Tool hat. Wie in Eclipse haben sie eine neue Komponente im Ordner Tools namens Android SDK Build-Tools, die benötigt wird Öffnen Sie den Android SDK-Manager, wählen Sie die neu hinzugefügten Build-Tools aus, installieren Sie ihn und starten Sie den SDK-Manager nach dem Update neu.

enter image description here

121
Paresh Mayani

Ich poste dies nicht als Antwort, sondern als Bestätigung für die von Paresh akzeptierte Antwort. Ich habe kürzlich die SDK-Tools auf Version 22 aktualisiert und festgestellt, dass meine Codeänderungen auf dem Gerät, das ich teste, überhaupt nicht wirksam waren. Wie die URL, die ich verwendet habe, erhalte ich Fehler bei der Verbindungsunterbrechung in Bezug auf die URL, die ich "zuvor" verwendet habe. Deshalb habe ich das Projekt gesäubert und neu erstellt, nur um herauszufinden, dass die automatisch generierte R.Java-Datei fehlt.

Nachdem ich Pareshs Antwort gelesen und mit meinem SDK-Manager überprüft hatte, sah ich Folgendes: enter image description here

SDK Build-tools 17 wurde nicht installiert und es gab bereits ein neues Update für SDK-Tools, obwohl im Changelog keine Änderungen in Bezug auf dieses Problem erwähnt werden. Dieses Update brachte meine R.Java-Datei zurück und die damit verbundenen Probleme wurden behoben einen Eclipse-Neustart und eine endgültige Bereinigung/Neuerstellung des Projekts.

17
Kerem

Die R-Datei kann nicht generiert werden, wenn Ihr Layout Fehler enthält. Wenn Ihr res -Ordner leer ist, können Sie davon ausgehen, dass kein res/layout Ordner mit allen darin enthaltenen Layouts, aber Ihre Aktivität ruft wahrscheinlich setContentView auf und findet nichts - dies ist ein Problem mit Ihrem Layout.

9
MarsAtomic

Zusätzlich zur Installation der Build-Tools und zum Neustart des Update-Managers musste ich auch Eclipse neu starten, damit dies funktioniert.

4
clearwater

Versuchen Sie, die Importzeile import com.your.package.name.app.R Zu löschen. Alle Ressourcenaufrufe wie mView= (View) mView.findViewById(R.id.resource_name); markieren das 'R' mit einem Fehler. Eine 'Schnellkorrektur' fordert Sie zum Importieren von R und auf Es wird mindestens zwei Möglichkeiten geben:

  • Android.R
  • ihr.Paketname.R

Wählen Sie das R, das Ihrem Paketnamen entspricht, und schon sollte es losgehen. Hoffentlich hilft das.

4
daniel_c05

Ich hatte ein voll funktionsfähiges Projekt, an dem ich eine kleine Änderung vornahm, als dies nach dem Aktualisieren des SDK auftrat. Eclipse hat das SDK und das ADT aktualisiert, aber ich konnte das Projekt immer noch nicht erstellen. Exlipse sagte, dass keine weiteren Updates verfügbar waren.

Das Problem blieb bestehen, bis ich ADT von Eclipse manuell deinstallierte und erneut installierte. Nur dann würde mein Projekt bauen. Ich hatte Eclipse zwischen jedem Schritt neu gestartet.

1
user2497389