39
votes

I have an Android 1.5 project in Eclipse and whenever I merely have an xml resource file open the build dies with an error. E.g. if I have the res\layout\main.xml open as the active document it won't build and throws the following error:

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

Then I have to delete main.out.xml and switch to any .java file in the project to get it to build.

Do I have something configured incorrectly or is this just an Eclipse or ADT bug? It drove me nuts for an hour before I figure out what the cause was.

8
Well, I have this kind of problem, but simply Project / Clean did works for me. I removed main.out.xml from res/layout, then resaved an main.xml, then reopens project. After this magic, project builds properly.user560761
I ran into the same issue.I delete first the xml files which were not parsed main.out.xml and strings.out.xml and then i go clean my project.When i re-run,everything was fine. Rgds,user626896
I had the same issue, and it totally freaked me out..., the .xml.out files even caused more and more errors, anybody should mention that problem on developer.android.com thanks anyway!!f4t-t0ny

8 Answers

64
votes

I ran into this as well.

If you have an xml file open and click the 'Run' button, then instead of running your Android project Eclipse will try to run a transform on the xml file. It then creates a new xml file with the output of the transform and adds it to your project. Then the project will fail to run at all because of the existence of the duplicate xml file.

So make sure you don't have any duplicate xml files in your project (look at the manifest file, as well as layout files). The way I work around this is to make sure the project tree has focus (or just select a tab with a java file) before clicking 'Run'.

There is likely a better way to handle this (via a config change perhaps), but I'm pretty new to Eclipse and that's the workaround I came up with :). Hope that helps.

18
votes

To configure the run button to always run the previously launched application:

Eclipse -> Window -> Preferences -> Run/Debug -> Launching -> Launch Operation -> Always Launch the previously launched application

7
votes

Eclipce / Project / Clean ... And run your project again ...

2
votes

I had same issue then trying to build project with ant. So I just cleared bin/ directory and the project was build.

1
votes

I just had the same problem because I had two files of different type format, but with the same name, like: jquerymobile.css and jquerymobile.js

the solution was to rename one of the files

1
votes

That will happen in the eclipse Indigo(IDE). when you are trying to run XML file instead of source pages(java files). So that will generate a file with the name of main.out.xml. so we have to delete the main.out.xml file and run the source files..

i Hope this will work..

0
votes

You should be able to have the xml file open, and build. There is an option if you right click on the project and go to android to clean up the project or reset the properties. Try that and see if it resolves the issue.

0
votes

I had the same issue with same named nine-patch and normal images. Giving different names solves the issue.