2010-01-12 8 views
7

Tengo un proyecto de eclipse de Android solo de biblioteca (sin clase principal, solo clases de biblioteca) que quiero incluir en mi proyecto principal de la aplicación Android.Incluyendo otros proyectos de Eclipse en un proyecto de aplicación de Android

Fui a la ruta de compilación y agregué el proyecto de biblioteca a los "Proyectos necesarios en la ruta de compilación" en la pestaña Proyectos, y lo revisé en la pestaña "Ordenar y exportar".

Sin embargo, cuando se ejecuta la aplicación, emite la excepción VerifyError, porque la clase del proyecto de la biblioteca no se empaquetaron juntas en el apk.

¿Alguna solución para esto?

Respuesta

6

Desafortunadamente, los proyectos de Android no se incluyen en el paquete. Si su proyecto de biblioteca solo tiene clases, no recursos, entonces puede convertirlo en un proyecto Java normal. Los proyectos de Java de los que depende un proyecto de Android se empacan.

Si el proyecto de la biblioteca utiliza clases específicas de Android, cuando lo conviertes en un proyecto de Java también debes agregar android.jar a la ruta de compilación. Esto será "plataformas/android-1.6/android.jar" dentro de su directorio SDK si tiene instalada la plataforma 1.6, por ejemplo.

+0

Estás en lo correcto. Si hago que la biblioteca proyecte un proyecto de Java (a diferencia del proyecto de Android), las clases se empaquetan. ¡Gracias! – yuku

1

Tuve un problema similar (con la excepción VerifyError al cargar en un dispositivo) usando la versión de Eclipse: 3.6.2. Creé un proyecto de la biblioteca de Android con algunas clases comunes para compartir, que dependía de las clases de Android SDK. En lugar de hacer que el proyecto de la biblioteca andrloid fuera un proyecto java 'normal', agregué el proyecto de la biblioteca como referencia de biblioteca en la pestaña Android de propiedades de proyectos para los proyectos que usaban la biblioteca. Esto resolvió la excepción de clase faltante.

3

Si la biblioteca es un proyecto Java normal, la forma más fácil de incluirlo en un proyecto de Android es utilizar una carpeta fuente vinculada. En el proyecto de la aplicación, vaya a Configurar ruta de compilación | Fuente | Fuente de enlace ... Denomine la carpeta algo así como library-src y señale a la carpeta src del proyecto de la biblioteca.

+0

¡Funciona! Cambié el nombre de "src" a "sth-src" y funciona. – 42n4

Cuestiones relacionadas