Frage

Vor kurzem hatte ich einige Probleme mit der R.Java -Datei. Jetzt habe ich beschlossen, ein Backup zu machen und die Datei zu löschen, um zu sehen, was passiert.

Nichts ist passiert, also habe ich eine leere R.Java -Datei erstellt und auf das Beste gehofft. Jetzt scheint Eclipse herauszufinden, dass die Datei manipuliert wurde und sogar eine Warnung ausgibt:

R.java was modified manually! Reverting to generated version!

Und das ist alles, was es gibt. Ich habe versucht, es manuell zu bauen, bekam aber keine Ergebnisse.

Also habe ich zwei Fragen:

  1. Was soll ich tun, um die Eclipse zu zwingen, die Datei zu regenerieren?
  2. was passiert hier? Wie wird die Datei erstellt, wo ist der Code, der die Datei generiert?

Ich würde mich über jede Hilfe freuen. Wie üblich trat das Problem nur wenige Tage vor Ablauf der Frist auf :)

War es hilfreich?

Lösung 4

Ich fand das Problem - ich habe ein 9Patch -Bild mit dem Patch -Bereich erstellt, der nur auf der Y -Achse definiert ist (ich habe versucht zu verhindern, dass die Größe des anderen die Größenänderung auf dem anderen hat).

Die Frage bleibt: Warum warnt es keine Warnung vor dem Fehler? Oder wenn es gibt - wo ist es begraben?

Andere Tipps

Ich hatte ein Problem damit, meine Android -App zu kompilieren, mit scheinbar unerklärlichen Fehlern über das Versäumnis, R.Java zu generieren.

Das Problem wurde durch meinen zuvor getöteten Android -Emulator während des Builds verursacht. Tu das nicht! Ein Hinweis war das Erscheinen mehrerer übrig gebliebener *.out.xml -Dateien.

Die Lösung bestand darin, das Projekt auszuwählen, auf Projekt-> sauber zu klicken und dann Löschen Sie alle *.out.xml -Dateien manuell. Nur dann könnte ich auf Run-> Run klicken und einen erfolgreichen Build haben.

Noch etwas: Ich benutze Eclipse. Ich musste sicherstellen, dass das Projekt im Package Explorer ausgewählt wurde, und nicht Nur eine zufällige Quelldatei. Leicht zu bemerken!

R.Java wird beim Build autogeneriert. Der Inhalt basiert auf den Ressourcendateien (einschließlich Layouts und Einstellungen).

Wenn Sie es gelöscht haben, wurde es neu erstellt. Wenn Sie jedoch Ihre eigenen erstellen, werden Sie in Schwierigkeiten geraten, da das Build -System es nicht ersetzt.

Sie können es einfach erneut löschen (manuell oder durch Projekt-> sauber) und Ihr Programm wieder aufbauen.

Ich hatte dieses Problem mehrmals, und in den meisten Fällen wird es in den "Res" -Dateien durch einen Fehler verursacht. Überprüfen Sie, ob alles in allen Ihren Res -Dateien in Ordnung ist, hauptsächlich XML, und nachdem Sie erstellt werden können.

Zum Beispiel können zwei häufige Ursachen dieses Problems sein:

  • Der Name einer Eigenschaft in einem Stil in einer XML -Datei hat nicht richtig geschrieben.

  • Schließe eine Zeichenfolge im XML einer Gebietsschemasdatei nicht richtig.

Entschuldigung, aber versuchen Sie, die Ausgabe in Sonnenfinsternis zu überprüfen. Möglicherweise haben Sie einige Fehler, die Eclipse verhindern, den Build -Proccess zu beenden (überprüfen Sie Ihre AndroidManifest.xml, ist es korrekt?) (*.Aidl) kann es sein, dass es einige Probleme gibt (inkonsistente Syntax oder etwas ....), die die Eclipse verhindern, R.Java zu generieren.

Ich hatte das gleiche Problem und es war so, dass ich eine Ressourcendatei (ein .png -Bild) unter Verwendung von Großbuchstaben benannt hatte. (ImageButton001.png anstelle von ImageButton001.png).

Aberhalb des Namens der Datei, die meine R.Java zurückkam.

Rgards, Juan

Wenn es unzureichende freie Speicher gibt, fällt das Build -Tool schweigend aus (Eclipse zeigt keine Fehler an oder meldet nichts im Fehlerprotokoll). Schließen Sie Ihre anderen offenen Anwendungen (z. B. den Emulator und den Browser), fügen Sie der Anwendungsmanifestdatei einen Speicherplatz hinzu und speichern Sie ihn.

Wie Ponkin sagte, haben Sie wahrscheinlich ein einziges Problem, das R nicht wiederherstellt, weil Sie jetzt eine Million und ein Problem haben.

Versuchen Sie nicht, selbst R -Klasse zu erstellen. Versuchen Sie, an das letzte XML nachzudenken, mit dem Sie sich angelegt haben, und überprüfen Sie es auf Fehler

Ich hatte das gleiche Problem hier

Stellen Sie sicher, dass es keine Fehler gibt, die Ihre Manifestdatei ist. Wenn Sie den Ressourcenstring app_name in /res/values/strings.xml löschen, weiß es nicht, wie R.Java richtig generiert wird. Ich fand dies ein Problem, wenn ich das HelloSospinner -Tutorial machte.

Ich stellte fest, dass eine unerwünschte Ressource ein Problem verursachte. Sobald ich löschte, wurde die Ressource R.Java generiert.

Ich hatte dieses Problem, um wieder aufzubauen R.java Ich habe den Code in der XML -Datei, an der ich gerade gearbeitet habe (oder andere aus versucht, wenn dies nicht funktioniert), die Datei gelöscht und dann einen anderen mit demselben Namen erstellt und den Code wieder einfügt. Hoffe das hilft.

Etwas, das gut zu wissen kann, ist das, wenn eine XML -Datei a? Dann enthält, dann R.java wird nicht regeneriert und der Fehler wird in der XML -Datei nicht angezeigt (manchmal wird es nach einer Weile angezeigt). Ich habe eine Zeile, die ähnlich ist:

< string name="questionmark"\>?< /string> <br>

Versuchen Sie, das zu ändern? zu etwas anderem und sehen, was mit dem passiert R.java Datei - hat für mich gearbeitet

Ich hatte ein ähnliches Problem, ich hatte eine .wav -Datei im RAW -Ordner mit einem Großbuchstaben umbenannt. Als ich mich in alle niedrigeren Falls umwandelte, das Projekt gereinigt hat und es wieder aufgebaut wurde R.java fein.

Wie andere sagten, halten Sie sich von der Erstellung Ihrer eigenen fern R.java Datei. Als ich mit Android anfing, stieß ich auf das gleiche Problem, und es dauerte einige Zeit, um herauszufinden, was durch Kompilierungsfehler verursacht wurde.

Was hast du damit versucht, mit dem zu tun? R.java Datei?

Ich hatte das gleiche Problem. Ich bin gerade zu:

Project -> Properties -> Android 

Und wählte den richtigen Emulator für mein Projekt aus, ich hatte 3 verschiedene zur Auswahl in diesem Moment. Mir wurde klar, dass ich den Emulator in einem bestimmten Moment verändert habe. Versuchen Sie also, den Emulator zu ändern, das könnte helfen!

Viel Glück

Ich hatte das gleiche Problem mit Intellij. Das Problem war, dass ich App_Name zweimal definiert hatte strings.xml Aus irgendeinem Grund haben sich Ideeninspektionen nicht automatisch aufgenommen.

Ich habe das auf einer anderen Seite gelesen und es hat mir geholfen:

"Wenn das Ihr Problem nicht behebt, ändern Sie Ihre Änderung Ihres Problems AndroidManifest.xml (Fügen Sie einfach einen Platz hinzu und speichern Sie). Ich habe gehört, dass das das erzwingen wird R.java neubauen. "

Fügen Sie also einfach einen Raum in die Manifest -Datei hinzu und bauen Sie dann wieder auf!

Als Randnotiz werden normalerweise diese *.out.xml -Dateien generiert, indem versucht wird, Ihr Projekt zu erstellen, während eine XML -Datei im Editor fokussiert ist

Ich hatte ein ähnliches Problem. Cleaning -Projekt hat das Problem nicht gelöst und es gab keinen Fehler im Code oder im Großbuchstaben oder in der Dateinamen.

Die Lösung ging in ein Popup-Fenster, das bei der Auswahl des Projekts-> reinigen und dann die Option "sofort einstellen" ausgewählt hat. Reinigen Sie das Projekt. Schließen und öffnen Sie die Sonnenfinsternis und erstellen Sie das Projekt (Projekt-> Build).

Die Frage bleibt, warum einfach sauber und baulos ohne die Eclipse funktioniert hat.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top