Mientras escribía esta pregunta logré resolverla, así que repítala aquí para beneficio de los demás. Aquí está el problema inicial:
He creado un proyecto de biblioteca muy simple al que quiero hacer referencia en otro proyecto. He hecho esto anteriormente sin problemas, así que no estoy seguro de por qué no funciona esta vez. Yo tengo:
Marcó el proyecto de la biblioteca a través de las propiedades del proyecto. El
default.properties
archivo tiene este conjunto:android.library=true
En mi otro proyecto, agregué una referencia a mi proyecto de biblioteca a través de las propiedades del proyecto. El
default.properties
archivo tiene la referencia agregada como se esperaba, es decirandroid.library.reference.1=K:/android_test_ws/applicationRegistrar
La marca verde contra el proyecto de biblioteca al que se hace referencia comienza en verde y luego cambia a una cruz roja.
Esto implica que debe haber algo mal / faltante en el proyecto de la biblioteca, pero no sé qué. Mi proyecto de biblioteca en esta ocasión es MUCHO más simple que el anterior que creé.
Respuestas:
OK Aquí está la solución que encontré cuando estaba buscando el archivo default.properies del proyecto de referencia (no la biblioteca) en mi sistema de archivos. Aunque el proyecto de referencia estaba en el mismo espacio de trabajo de eclipse que el proyecto de la biblioteca, los archivos reales estaban en otro lugar del sistema de archivos, es decir, no estaban en la misma carpeta principal del proyecto de la biblioteca. Tan pronto como coloqué el proyecto de referencia en la misma carpeta física que el proyecto de la biblioteca, todo salió bien.
Supongo que esto debe tener algo que ver con Android usando hormiga debajo de las sábanas.
Editar: el nombre del proyecto debe coincidir con el nombre de la carpeta en el sistema de archivos. Lo que está viendo en Propiedades del proyecto-> Android-> Referencia de biblioteca es una ruta relativa del sistema de archivos.
fuente
Asegúrese de que ambos proyectos estén presentes en el mismo espacio de trabajo. Para hacerlo, al importar los proyectos, asegúrese de que la casilla de verificación "copiar el proyecto en el espacio de trabajo" esté marcada.
fuente
el mismo problema ocurrirá si su proyecto de biblioteca está en una partición diferente de su espacio de trabajo actual. Tengo el mismo problema ahora. Mi fuente de git está en C: y simplemente muevo mi espacio de trabajo a D: y todo comienza a colapsar.
fuente
La forma más sencilla de corregir las rutas de las rutas de la biblioteca es usar la GUI de Eclipse para agregar la biblioteca como se muestra en la siguiente captura de pantalla y dejar que Eclipse se encargue de poner las rutas relativas correctas en project.properties. Es una configuración común tener los proyectos de su biblioteca alojados en directorios muy diferentes a los proyectos principales que usan la biblioteca. Este método funcionará si el "proyecto de la biblioteca" y el proyecto que lo usa están en el mismo "espacio de trabajo" de eclipse (no es necesario que estén en la misma carpeta principal):
fuente
Asegúrese de que el proyecto de la biblioteca esté marcado como "Es biblioteca" - haga clic con el botón derecho en el proyecto de biblioteca - propiedades - Android - marque la casilla de verificación "Es biblioteca" - en project.properties del proyecto de biblioteca debe tener una nueva entrada: "android .library = true. Ahora agréguelo al proyecto que desee como se describe en la publicación a continuación (la publicación con la imagen integrada, de Nilesh Pawar).
fuente
Este error se menciona varias veces aquí 27199 , 35786 , 36460 y 38052
Quizás votando por ellos, se arreglará algún día ...
fuente
Otra observación más sobre el mismo tema.
Para mí, los dos proyectos estaban en la misma carpeta principal y ambos eran locales dentro del espacio de trabajo. Incluso entonces, el problema seguía sucediendo.
Luego edité el archivo "project.properties" y puse la ruta absoluta (con barras diagonales '/' para el separador) del proyecto de la biblioteca. Guardado y cerrado. Luego fue al diálogo de propiedades del proyecto, eliminó la biblioteca (que todavía mostraba el ícono de la cruz pero con la ruta abs) y la agregó nuevamente como de costumbre. Sorprendentemente, el problema se resuelve y el proyecto se compila y se ejecuta.
Esto es realmente extraño y debe ser un error del ADT. Estoy usando ADT versión 20.0.2
fuente
cuando el desarrollador hace referencia a Facebook o cualquier otro proyecto de biblioteca, primero limpie el proyecto de eclipse-> proyecto-> proyecto limpio. que quieran permitir el error de cruz roja en la pantalla de referencia.
fuente
Para mí, simplemente reinicio el eclipse y la biblioteca agregada funciona bien.
Me refiero a la primera vez que muestra marcas rojas después de agregar el proyecto de la biblioteca. Aunque el proyecto principal de eclipse y el proyecto de la biblioteca están en la misma carpeta del espacio de trabajo y no hay archivos de recursos fuera de la carpeta del proyecto.
Entonces, puedes intentar reiniciar tu eclipse. Codificación feliz ....
fuente
La solución para mí fue
resolvió mi problema
fuente
tuve el mismo problema allí cuando trato de cambiar mi espacio de trabajo, así que esta es mi solución:
fuente
Simplemente reinicie su eclipse. Es resolver mi problema
fuente
Cuando echas un vistazo a la ruta de referencia antes y después, viene de, por ejemplo, "C: / workspace / mylib" y va a "../../mylib" cuando se copia en la ubicación correcta, bastante interesante.
fuente
FYI,
Lo que funcionó para mí fue eliminar los proyectos de la 'biblioteca' (los proyectos reales) de mi espacio de trabajo (sin eliminar los archivos) y luego volver a importarlos usando el asistente (importar el proyecto de Android existente desde el código fuente).
fuente
Gracias por publicar la pregunta. Tuve exactamente el mismo problema al integrar Facebook con mi aplicación de Android. Solucioné el problema moviendo mi proyecto de desarrollo a la misma unidad de Windows en la que se encontraba el proyecto de la biblioteca. De alguna manera, Eclipse no puede leer la ubicación del proyecto de la biblioteca correctamente desde el archivo default.properties si está en una unidad diferente.
fuente
Al igual que en la publicación de Sufi Khan, también resolví este problema con un reinicio. Mi caso difería en que cuando accedí por primera vez a Propiedades-> Android y agregué la biblioteca, obtuve una hermosa marca de verificación verde. Cuando cerré el cuadro de diálogo, Eclipse todavía mostraba errores de tipo de clase no encontrada. Cuando revisé las propiedades nuevamente, vi la X roja. Pero la solución del Sr. Kahn (eliminar la biblioteca incorrecta, reiniciar Eclipse, agregar la biblioteca nuevamente) funcionó bien.
Estoy usando la versión 0702 del paquete ADT (comienza con "cluster", rima con "duck").
fuente
Seguí la respuesta aceptada, pero también tuve que asegurarme de que mi archivo "project.properties" fuera legible.
Si el archivo es de solo lectura (registrado en el control de código fuente), eclipse no lo editará. La adición de la referencia de la biblioteca se realizará correctamente, pero el cambio no se mantendrá después de hacer clic en Aceptar.
Si cerrar la ventana de preferencias y volver a abrirla elimina la biblioteca que acaba de agregar, esta puede ser su solución.
fuente
En caso de que su proyecto de biblioteca aún no aparezca, intente agregar la marca de biblioteca en las propiedades de su proyecto de biblioteca
Agregar android.library = true
project.properties
fuente