2011-07-25 11 views
5

Aunque la construcción de código fuente de Android que estoy recibiendo este error:fuente de Android construcción: clase duplicado

out/target/common/obj/APPS/SystemUI_intermediates/src/com/android/systemui/R.java:10: duplicate class: com.android.systemui.R

Incluso si ejecuto el comando rm para eliminar ese archivo o ejecutar make clean. ¿Por qué es eso y cómo lo manejo?

Respuesta

9

Probablemente tengas 2 archivos R.java en 2 directorios diferentes. Debe ejecutar una búsqueda para localizar y eliminar ambos, luego intente reconstruir.

+0

Esto funcionó para mí. ¡Hurra! – Yuvi

0

compruebe si tiene cambiar el nombre del paquete en el archivo de manifiesto o intente eliminar el archivo R.java y luego compilarlo de nuevo.

3

Un sistema de compilación puede dejar generado el archivo fuente R.java en un directorio, mientras que otro sistema de compilación lo tomará como un archivo fuente normal y colocará R.java generado en otro directorio.

Por ejemplo, puede usar el proceso de compilación AOSP, pero después de abrir sus fuentes en IntelliJ se rompe, porque IntelliJ ha puesto R.java adicional bajo el directorio .

Resumen: limpiar correctamente el directorio de salida y compruebe que su fuente directorios no recibe archivo extra R.java. Ejecute find . -name R.java en el directorio raíz del proyecto para ver si algún archivo Redjant R.java como en gen dir

2

No me ayudó a eliminar los archivos duplicados R.java y BuildConfig porque siempre estaba recreando y mostrando el error anterior.

Lo que me ayudó a entender por qué los archivos se duplicaron en los primeros lugares. En mi caso fue porque erróneamente hice una dependencia de ciclo entre mis módulos en el proyecto. De esta forma, cuando el compilador comenzó a crear clases para uno de los módulos que ya compiló como una dependencia, mostró el error. Eliminar la dependencia innecesaria y volver a compilar el proyecto solucionó el problema.

P.S.
La razón por la que no encontré el problema de dependencia de inmediato es porque el estudio de Android que estoy usando actualmente (0.6.1) tiene un error donde a veces la vista de configuración del proyecto tiene errores y muestra módulos que ya fueron eliminados o no muestra módulos que están actualmente allí en la lista de dependencia. Reiniciar el estudio de Android corrige el problema, por lo que recomiendo reiniciar antes de aplicar el arreglo anterior.

+0

Tienes toda la razón.Puede eliminar los archivos de compilación hasta que su cara sea azul, pero siempre se regenerarán/reconstruirán cada vez causando un conflicto de R.java duplicado. –

0

Si está utilizando Netbeans, que podría ser un BUG 226360



que podría ayudar a despejar Netbeans caché:

Ir a Help ->About y verá

Directorio de caché: Ruta \ a \ Directorio

vaya al directorio especificado y elimine todo.

Cuestiones relacionadas