2011-11-29 15 views
8

He descargado el código de google codes pero cuando importo ese proyecto en mi eclipse IDE no genera el archivo R.Java. Busqué en muchos blogs y foros y probé muchas cosas como limpiar, reconstruir, crear proyecto de fuente existente, etc., pero todavía enfrenta el problema. Algunas personas mencionaron que a veces es causado por el software de cliente SVN, pero ninguno de ellos mencionó ninguna solución para eso. Les estaré muy agradecido si lo descargan ustedes mismos y encuentran cuál es el problema exacto.R.Java no generado

+0

¿Ha intentado eliminar la carpeta "gen"? – vanleeuwenbram

+1

no hay ninguna carpeta "gen" en absoluto – Waseem

+0

¿alguna actualización de esto? es el problema resuelto? –

Respuesta

16

En general, para que funcione: Proyecto

  1. importación en Eclipse (Archivo -> Importar -> General -> Existing proyectos en espacio de trabajo)
  2. en Eclipse, cree manualmente la carpeta Gen y añadirlo como carpeta de origen (clic derecho en su proyecto, Build Path -> Configurar Vía de construcción -> Añadir carpeta)
  3. Limpiar el proyecto, se supone que debe tener R.java generó

Pero no es así, ¿por qué?

Debido a que hay un error de compilación (? O error) con respecto al archivo xml de res, por lo que no se genetared R (que he probado en mi Mac):
En res/valores/styles.xml: comenté el siguiente:

<style name="iWindowTitleBackground" parent="android:WindowTitleBackground">  
    <item name="android:background">@drawable/title_bar</item>   
</style> 

En res/valores/themes.xml: comente la siguiente:

<item name="android:windowTitleBackgroundStyle">@style/iWindowTitleBackground</item> 

a continuación, hacer un proyecto -> Limpio, que debe recibir R.java genera.

Se ha notificado un error que parent = "android: WindowTitleBackground" no se puede resolver en algún sistema operativo; consulte here para obtener más información.

+5

me olvidé de eso, no se genera si hay errores. todo el asunto de R.java fue un dolor en el culo y un problema estúpido cuando lo resolví. no es realmente los desarrolladores solo fallan un error en el sdk :( –

+0

gracias. No tenía el mismo contenido xml exacto, pero limpiarlos no obstante funcionó. –

1

Cuando me encuentro con este problema elimino la carpeta Gen y se volverá a crear con todos los archivos r

+0

como lo mencioné a continuación. Es por eso que cuando encuentras a ById y comienzas a escribir r.id, ves android.r y simplemente r.y sus archivos de proyecto están en la segunda variable R. solo para referencia futura. –

1

se pueden ver en la parte superior de su archivo que dice la importación android.r o r.java me olvido . necesita eliminar esta línea, limpiar el proyecto y volver a ejecutar.
básicamente Android utiliza R para hacer referencia a los elementos dentro de su proyecto. pero cuando esa declaración de importación es no anula mirar sus directorios de proyectos y utiliza androides

1

Me encontré con el mismo problema al intentar crear el código de muestra wiktionary que descargué de code.google.com (here) Importé en un nuevo proyecto de Eclipse Juno configurado para usar Android 4.1 y JDK 1.6.

He aquí un extracto de la consola después de la construcción del proyecto:

W/ResourceType(6292): Bad XML block: header size 103 or total size 0 is larger than data size 0 C:\Development\WorkJava\android\sampleapps\Wiktionary\com.example.android.wiktionary.LookupActivity\res\values\strings.xml:23: error: Multiple substitutions specified in non-positional format; did you mean to add the formatted="false" attribute? C:\Development\WorkJava\android\sampleapps\Wiktionary\com.example.android.wiktionary.LookupActivity\res\values\strings.xml:23: error: Unexpected end tag string

He aquí un extracto de la resolución/valores/string.xml:

<resources> 

<string name="app_name">Wiktionary Word of the Day</string> 
<string name="app_descrip">A fast Wiktionary browser and Word-of-day widget</string> 
<string name="app_credits">"All dictionary content provided by Wiktionary under a GFDL license. http://en.wiktionary.org\n\nIcon derived from Tango Desktop Project under a public domain license. http://tango.freedesktop.org".</string> 
<string name="template_user_agent">"%s/%s (Linux; Android)"</string> 
<string name="template_wotd_title">"Wiktionary:Word of the day/%s %s"</string> 
<string name="template_wotd_archive_title">"Wiktionary:Word_of_the_day/Archive/%s/%s"</string> 

SOLUCIÓN

Al agregar formatted = "false" a las 3 últimas definiciones de cadena (que contienen dos marcadores de posición de sustitución% s), como se muestra a continuación, se solucionó el problema. La reconstrucción del proyecto generó R.java en la carpeta gen.

<resources> 

<string name="app_name">Wiktionary Word of the Day</string> 
<string name="app_descrip">A fast Wiktionary browser and Word-of-day widget</string> 
<string name="app_credits">"All dictionary content provided by Wiktionary under a GFDL license. http://en.wiktionary.org\n\nIcon derived from Tango Desktop Project under a public domain license. http://tango.freedesktop.org".</string> 
<string name="template_user_agent" formatted="false">"%s/%s (Linux; Android)"</string> 
<string name="template_wotd_title" formatted="false">"Wiktionary:Word of the day/%s %s"</string> 
<string name="template_wotd_archive_title" formatted="false">"Wiktionary:Word_of_the_day/Archive/%s/%s"</string> 
1

todavía tenía este error después de comprobar que todos mis recursos no tenían errores, limpieza, reconstrucción, reiniciar, etc

me fijo Esta mediante la filtración de los archivos de SVN del proyecto.

How to exclude .svn directories from search in Eclipse?

Si bien la cuestión menciona búsqueda, la solución se refiere a qué archivos se utilizan en la compilación también.

Reiniciado, y todo estaba bien.

0

Cambio del espacio de trabajo para nuevo directorio y establecer sus permisos de tal manera que está disponible para todo el mundo

1

".xml" y 'archivos de imagen' y asegurarse de que los nombres de las minúsculas.

0

En mi caso, encontré un nombre de archivo de imagen que contiene una mayúscula dentro res/dibujable. después de cambiar el nombre de la imagen. fue resuelto y pude construir el proyecto

3

Siempre que su clase R generada no se genere, indica que hay un problema con la generación debido a algún problema de análisis de los recursos XML. Verifique la consola de error en su IDE para descubrir qué es específicamente incorrecto.

Los problemas más comunes son:

  • Un personaje sin escapar en su strings.xml, por ejemplo you're en lugar de you\'re
  • Missing layout_width o layout_height etiquetas en los recursos de diseño
  • que faltan declaraciones de espacios de
  • nombres de variables no son compatibles con Java, por ejemplo, debido a mayúsculas o uso de espacios, guiones u otros caracteres no compatibles
  • Cualquier otro tipo de error de sintaxis en XML
  • Comprobar consola para las Cuestiones (imagen se adjunta, donde la consola es la definición de la cuestión ¿por R no está generando en su proyecto)

enter image description here

0

Me enfrenté a este problema muchas veces. La regla de oro es verificar tus archivos .xml.
R.java no se genera cuando hay algún problema en el archivo .xml.

0

Simplemente haga clic en

Build --> Clean Project 

Esto funcionó para mí

Cuestiones relacionadas