2011-03-12 20 views

Respuesta

45

bien ..... 5 minutos más tarde Google me dice que la respuesta correcta ...

http://www.fairtec.at/en/it-blog-mainmenu-16/168-the-type-r-is-already-defined

que acaba de búsqueda ni de lo suficiente.

"El tipo R ya está definido"

Ese es el mensaje que aparece en Eclipse si se intenta construir el Funambol Android Sync Client. La razón es que ha verificado dos constructores que intentan generar la misma clase. Simplemente tiene que desmarcar Java-Builder de Proyecto-> Propiedades-> Constructores. Entonces la aplicación incluso funciona bien en el emulador.

+0

Acepte su propia respuesta como la correcta: ayudará a otras personas que buscan una respuesta a ver cómo resolvió esta pregunta. – Squonk

+0

Eso es realmente extraño, eso lo arregló para mí, pero otro proyecto de Android en el que estaba trabajando tenía el generador de Java verificado. – NoBugs

+0

Muchas gracias ... :) – duongvanthai

2

Tuve el mismo problema cuando importé un proyecto del trabajo. Desactivar el generador Java como se sugiere en el artículo que encontraste solucionó mi problema, pero cuando realicé actualizaciones de código, no se reflejaron en la aplicación en ejecución. En mi caso, había un R.java en mi fuente que eliminé y que solucionó mi problema.

+2

La R en la fuente (por qué agregaron R a la fuente, quién sabe ...) también fue el problema en mi caso. Desmarcar Java Builder también ayudó, pero creo que esa no es la solución correcta. – Ixx

8

Elimine R.java de la carpeta src y vuelva a generar el proyecto. Este archivo se rebuitará automáticamente durante este proceso.

1

En mi caso,

como no im utilizando cualquier IDE para la programación, pero utilizando la línea de comandos Android ..

tenía dos archivos xml, uno en diseño y otro en layout-land. yo estaba usando el mismo id "XXX" para ambos, pero si bien declaró que hice pequeño error

android:id="@+id/XXX" (in layout xml) 
android:id="@+id/XXX " (in layout-land xml) 

se recomienda seguir un espacio extra en la segunda declaración de identificación, por lo que al crear R.java eran diferentes y en R.java que tenía

public static final int XXX=0x7f040046; 
public static final int XXX =0x7f040045; 

que son iguales, así que tenga en cuenta los espacios adicionales.Gracias

Cuestiones relacionadas