Frage Android - Wie regeneriert man die R-Klasse? [Duplikat]


Mögliche Duplikate:
Entwickeln für Android in Eclipse: R.java erzeugt nicht 

Ich habe ein Projekt in meine Eclipse-IDE importiert, aber es gibt mir einen Fehler, da die R-Datei nicht automatisch generiert wird.

Wie kann ich die R-Datei so bearbeiten, dass sie meinen Projektanforderungen entspricht?


76
2018-01-11 10:11


Ursprung


Antworten:


Im eine weitere Stackoverflow-FrageJemand hat das beantwortet: Sie müssen Warnungen und Fehler (Syntax und Links) in Ihren XML-Dateien loswerden. Dies macht ein Clean / Build-Projekt.

Projekt -> Reinigen, und wählen Sie die Option zum Erstellen des Projekts.


46
2018-01-22 23:41



Ich fand das mit einem kaputten Layout und alles geht in die Luft. Entspann dich, es ist wie dieser alte Fehler, als du zum ersten Mal das Programmieren gelernt hast, wo du ein Semikolon vergessen hast und es hundert Fehler erzeugt. Viele Panik, drücken Sie alle Knöpfe, und macht die Dinge noch schlimmer.

Lösung

  • Stellen Sie sicher, dass alles, was R. Links zu ist nicht kaputt. Wenn es kaputt ist, kann ADK R nicht regenerieren. Beheben Sie alle Fehler in Ihren XML-Dateien.
  • Wenn du irgendwie etwas getroffen hast und erstellt hast import android.R in deiner Aktivität, entfernen Sie es.
  • Lauf Projekt -> Sauber. Dadurch werden R und BuildConfig gelöscht und neu generiert.
  • Stelle sicher Projekt -> Automatisch erstellen ist angekreuzt.
  • Warten ein paar Sekunden, bis die Fehler verschwinden.
  • Wenn es nicht funktioniert, löschen Sie alles im Ordner / gen /
  • Wenn es immer noch nicht funktioniert, versuchen Sie es Klicken Sie mit der rechten Maustaste auf Ihr Projekt -> Android Tools -> Fix Projekteigenschaften.

Was tun, wenn R nicht regeneriert?

Dies passiert normalerweise, wenn Sie eine beschädigte XML-Datei haben.

  • Überprüfen Sie Fehler in Ihren XML-Dateien, hauptsächlich im Ordner / res /
  • Übliche Orte sind / layout / und / values ​​/ insbesondere, wenn Sie kürzlich eines von ihnen geändert haben
  • Überprüfen Sie AndroidManifest.xml, ich finde, dass ich oft eine Zeichenkette ändere und vergess, den Zeichenkettennamen von AndroidManifest.xml zu ändern.
  • Wenn Sie das Problem nicht finden können. Rechtsklick / gen / -> Aus lokaler Historie wiederherstellen ... -> Tick R.java -> Klick auf Restore. Dies löst das Problem nicht, aber es beseitigt die zusätzlichen Fehler, um das Problem leichter zu finden.

Ich weiß, dass es hier schon viele Antworten gibt, aber das ist der erste Link bei Google, also erstelle ich hier alle Ratschläge und hoffe, dass es jemand anderem hilft, der neu ist :)


29
2017-08-30 11:09



Ok, ich habe es behoben:

Als ich Manifest in Zielversion 1.5 änderte, erschienen Millionen Fehler und nur einer war nicht mit der R-Klasse verbunden - in den Manifest-Dateiattributen "targetSdkVersion" und "maxSdkVersion" gab es in SDK 1.5 nicht

Aus diesem Grund konnte R Klasse nicht generieren.


15
2018-01-11 11:15



Ich hatte ein ähnliches Problem, wo die R.java-Datei nicht neu erstellt wurde, nachdem ich einige Symbole und Layoutdateien hinzugefügt hatte. Ich habe versucht, sie zu säubern und wieder aufzubauen, und die Dinge verschlechterten sich, seitdem die ursprüngliche R.java-Datei verschwunden war und immer noch nicht regeneriert wurde. Irgendwann wurde mir klar, dass es Compilerfehler für den Compiler geben muss, der R.java generiert und wir werden diese in der Konsole nicht angezeigt. Zum Glück hatte ich das früher bemerkt

  1. Es ist ein Fehler, wenn sich eine .xml-Datei auf eine andere Datei bezieht, die nicht existiert
  2. Es ist ein Fehler, Großbuchstaben in Ihren Dateinamen zu haben (warum ist das verboten, ich liebe Kamelfall).

Nach dem Umbenennen meiner Icons und XML-Dateien in Kleinbuchstaben und dem anschließenden Fixieren aller Referenzen in den XML-Dateien voila wurde R.java neu generiert. Gerade rechtzeitig, um mich gut zu fühlen, als ich zum Mittagessen aufhörte :-)


14
2018-04-21 19:14



Um die R-Datei erneut zu generieren:

  1. Ändern Sie etwas in layout-> activity_main.xml
  2. Speicher die Datei
  3. Projekt-> Sauber ...

Löschen Sie einfach die R-Datei im gen-Verzeichnis und versuchen Sie dann Project-> Clean. Dann baue deine App erneut.


8
2018-03-13 15:08



Sie können auch mit der rechten Maustaste auf das Symbol klicken project -> Android Tools -> Fix Project Properties. Dies sollte dazu führen, dass die R.java-Klasse neu generiert wird.


7
2018-01-11 15:24



Mein Problem war in der Manifest-Datei. Ich habe Launcher-Icons gelöscht und nicht auf Manifiest :)


4
2017-12-04 08:06



Ich öffne Eclipse wieder, bearbeite eine meiner XML-Dateien und entdecke dann, dass meine Aktivitätsklasse android.R statt meinem Paket "R" bezieht :-)


4
2017-12-31 16:16



Um die R.class zu regenerieren, müssen Sie mehrere Techniken ausprobieren.

  • Entfernen Sie alle R-Importe aus Ihren Java-Quelldateien: import R.android
  • Stellen Sie sicher, dass Sie das Fenster "Probleme" öffnen, indem Sie zu Fenster-> Sicht anzeigen-> Probleme gehen
  • Wenn Sie Fehler in Ihren XML-Ressourcen haben, müssen Sie diese Fehler korrigieren. In meinem Fall musste ich meine ID-Attribute ändern, um das "+" - Zeichen wie folgt einzuschließen: android:id="@+id/grp_txt"
  • Fahren Sie nun mit Projekt-> Reinigen fort
  • Zuletzt Projekt-> Schließen, Projekt-> Öffnen

Das "+" - Zeichen zeigt eine neue Ressourcen-ID an und zwingt das aapt-Tool zum Erstellen einer neuen Ressourcen-Ganzzahl in der R.java-Klasse.


3
2018-03-15 02:32