2009-11-04 5 views
37

Ich habe ein Android 1.5-Projekt in Eclipse und wann immer ich nur eine XML-Ressourcendatei haben, öffnet der Build mit einem Fehler. Z.B. wenn ich die res\layout\main.xml offen, wie das aktive Dokument haben es nicht aufbauen und führt den folgenden Fehler:Android-Projekt wird nicht erstellt, wenn eine Ressourcendatei bearbeitet

Error in an XML file: aborting build. 
res\layout\main.xml:0: ERROR Resource entry main is already defined. 

Dann muss ich main.out.xml löschen und wechseln Sie in jede .java-Datei in das Projekt, um es zu bauen.

Habe ich etwas falsch konfiguriert oder ist dies nur ein Eclipse oder ADT Bug? Es trieb mich für eine Stunde, bevor ich herausfinden, was die Ursache war.

+0

Ich hatte das gleiche Problem, und es flippte mich total aus ..., die .xml.out-Dateien verursachten sogar mehr und mehr Fehler, jeder sollte dieses Problem auf developer.android.com trotzdem erwähnen !! –

+0

Ich lief in das gleiche Problem.Ich lösche zuerst die XML-Dateien, die nicht analysiert wurden main.out.xml und strings.out.xml und dann gehe ich sauber mein Projekt.Wenn ich neu ausführen, war alles in Ordnung. Rgds, –

+0

Nun, ich habe diese Art von Problem, aber einfach Project/Clean hat für mich funktioniert. Ich habe main.out.xml aus res/layout entfernt, dann eine main.xml erneut gespeichert und dann das Projekt erneut geöffnet. Nach dieser Magie baut sich das Projekt richtig auf. –

Antwort

63

Ich lief auch in diesem.

Wenn Sie eine XML-Datei geöffnet haben und auf die Schaltfläche "Ausführen" klicken, wird Eclipse anstelle der Ausführung Ihres Android-Projekts versuchen, eine Transformation für die XML-Datei auszuführen. Es erstellt dann eine neue XML-Datei mit der Ausgabe der Transformation und fügt sie Ihrem Projekt hinzu. Dann wird das Projekt wegen der Existenz der doppelten XML-Datei überhaupt nicht ausgeführt.

So stellen Sie sicher, dass Sie keine doppelten XML-Dateien in Ihrem Projekt haben (schauen Sie sich die Manifest-Datei, sowie Layout-Dateien). Die Art, wie ich das bearbeite, ist sicherzustellen, dass der Projektbaum den Fokus hat (oder wähle einfach einen Tab mit einer Java-Datei), bevor du auf "Ausführen" klickst.

Es gibt wahrscheinlich einen besseren Weg, dies zu handhaben (über eine Änderung der Konfiguration vielleicht), aber ich bin ziemlich neu in Eclipse und das ist die Workaround, die ich mit :) kam. Ich hoffe, das hilft.

+2

Ich hatte dieses Problem vor und ich konfigurierte automatisch das letzte Projekt zu starten, wenn ich die Ausführen-Taste drücke. Das ist gut, weil Sie nicht daran denken müssen, den Fokus auf die richtige Datei/Registerkarte zu ändern. Der Grund scheint ein XML/XSL-Problem zu sein, das zu denken scheint, dass die XML-Dateien für die XML/XSL-Erweiterungen lauffähig sind. Die von den Eclipse-Jungs erwähnte Problemumgehung funktioniert bei mir nicht, da ich diese Plugins nicht entfernen kann. Anyway: Konfigurieren Sie Ihren Lauf, um immer das letzte Projekt auszuführen. Funktioniert gut für mich mit 30+ Projekten :) – WarrenFaith

+1

Sie sollten dies wirklich unter dem Google Tutorial! Danke, du hast mir die Haare gerettet: D –

0

Sie sollten in der Lage sein, die XML-Datei zu öffnen und zu erstellen. Es gibt eine Option, wenn Sie mit der rechten Maustaste auf das Projekt klicken und zu Android gehen, um das Projekt zu bereinigen oder die Eigenschaften zurückzusetzen. Versuchen Sie das und sehen Sie, ob es das Problem löst.

+0

Wenn ich zu Android Tools gehen-> Fix Projekteigenschaften wird es einmal funktionieren, aber wenn ich zu einer anderen XML-Ressource wechseln, schlägt es erneut fehl. Ich bin definitiv nicht der einzige mit dem Problem, wie ich andere hier diskutieren fand http://www.anddev.org/viewtopic.php?p=25517 – duckworth

+0

Hmm, ich muss überprüfen, wenn ich nach Hause komme , aber ich erinnere mich nicht an diesen Fehler vorher. Aus Neugier, welche Version des SDK verwenden Sie und auf welchem ​​Betriebssystem? Ich benutze 1.6 auf Vista. – broschb

7

Eclipce/Projekt/Saubere ... Und Ihr Projekt wieder laufen ...

+0

ja "Eclipce/Project/Clean ... Und dein Projekt nochmal laufen ..." löste es für mich. –

18

die Lauftaste So konfigurieren Sie immer die zuvor gestartete Anwendung auszuführen:

Eklipse -> Fenster -> Einstellungen - > Run/Debug -> Starten -> Launch Operation -> Starte immer die zuvor gestartete Anwendung

+0

Genau das, was ich gesucht habe! – DonnaLea

+2

Dies sollte die akzeptierte Antwort sein ... –

1

Ich hatte gerade das gleiche Problem, weil ich zwei Dateien unterschiedlichen Typs hatte, aber mit dem gleichen Namen, wie: jquerymobile. css und jquerymobile.js

Die Lösung war, eine der Dateien

2

umzubenennen Ich hatte das gleiche Problem dann versuchen, Projekt mit Ant zu bauen. Also habe ich gerade bin/Verzeichnis gelöscht und das Projekt wurde erstellt.

1

Das wird in der Eclipse Indigo (IDE) passieren. wenn Sie versuchen, eine XML-Datei anstelle von Quellseiten (Java-Dateien) auszuführen. Das erzeugt eine Datei mit dem Namen main.out.xml. so müssen wir die main.out.xml Datei löschen und die Quelldateien laufen ..

Ich hoffe, dass dies funktionieren wird ..

0

ich mit dem gleichen Namen neun Patch und normale Bilder hatte das gleiche Problem. Wenn Sie andere Namen angeben, wird das Problem gelöst.

Verwandte Themen