error - export classpath java




NoClassDefFoundError-Eclipse y Android (18)

A veces ocurrirá debido a que no incluye jar, que tiene dependencia, con la etiqueta "uses-libary" en su AndroidManifest.xml.

Además, asegúrese de que esté dentro de la etiqueta "application".

Saludos,

Ravi

Estoy teniendo un problema al intentar ejecutar una aplicación de Android que, hasta agregar una segunda biblioteca externa a su ruta de compilación, estaba funcionando bien. Desde que agregué el archivo scoreninja jar, ahora obtengo un NoClassDefFoundError cuando intento ejecutar la aplicación.

Aquí está el mensaje:

02-11 21:45:26.154: ERROR/AndroidRuntime(3654): java.lang.NoClassDefFoundError: com.scoreninja.adapter.ScoreNinjaAdapter

Como todos los scripts de construcción son generados por las herramientas de Android (?), No estoy seguro de qué otra cosa puedo hacer aparte de limpiar y reconstruir o reiniciar Eclipse (ya he probado los tres). ¿Alguien sabe cómo puedo enmendar esto?


Al agregar el jar externo a su ruta de compilación, solo agregue el jar a su paquete, pero no estará disponible durante el tiempo de ejecución.

Para que el frasco esté disponible en tiempo de ejecución , debe:

  • Pon el frasco debajo de tu carpeta de assets
  • Incluye esta copia del tarro en tu ruta de construcción.
  • Ir a la pestaña de exportación en la misma ventana emergente
  • Marque la casilla contra el tarro recién agregado


Esto me sucede muy a menudo.

La última vez que sucedió lo que recordé fue causada por cambiar el Eclipse ADT (edición especial de Google) a Android Studio y volver a cambiar. Básicamente probé todos los métodos que encontré en que no funcionaron para mí.

Finalmente, conseguí que la aplicación volviera a funcionar (no más NoCalssDeffoundError) cambiando mi IDE a Eclipse original (Kepler) con ADT.


He cambiado el orden de los proyectos incluidos (Eclipse / Configurar Build Path / Order and Export). He movido mis dos proyectos dependientes a la parte superior de la lista "Ordenar y exportar". Se resolvió el problema "NoClassDefFoundError".

Es extraño para mi. No escuché sobre la importancia del orden de las bibliotecas y proyectos incluidos. Android + Eclipse es divertido :)


Intenté todo desde esta publicación (y algunas otras), y no funcionó para mí. Esta es, con mucho, la actualización ADT más terrible que he experimentado, y nunca la actualizaré sin una copia de seguridad ADT que funcione.

Logré resolverlo eliminando el proyecto y luego agregándolo nuevamente usando una copia de seguridad de origen que tenía.


La solución here funcionó para mí. Es una cuestión de importar la biblioteca a la carpeta libs, luego modificar el archivo build.gradle y luego limpiar con gradlew.


Lo mismo funcionó para mí: Propiedades -> Java Build Path -> "Order and Export" Interesantemente, ¿por qué esto no se hace automáticamente? Supongo que falta algún ajuste. También esto me pasó después de la actualización del SDK.


No estoy seguro de si esto está relacionado, o si aún está buscando una respuesta, pero encontré este hilo al intentar investigar el mismo error (pero posiblemente por diferentes razones).

No pude encontrar ninguna solución en línea, pero una respuesta en un hilo similar me hizo pensar y me di cuenta de que probablemente solo necesitaba reconstruir (o limpiar) el proyecto.

En Eclipse, vaya a Proyecto => Limpiar. Selecciona tu proyecto y Eclipse parece arreglarlo por sí mismo. Para mí esto solucionó el problema.

Espero que esto ayude.


No tuve que poner la biblioteca de archivos jar en recursos o lib (s), sino que solo tenía que marcar la casilla de este archivo en Propiedades -> Java Build Path -> "Order and Export" (estaba ordenado anteriormente, pero no estaba seleccionado )


Probé varias cosas y la razón del error en mi caso fue el conflicto entre maps.jar y Google Api en Java Build Path-> Libraries. Entonces, cuando quité el maps.jar funcionó bien.

Saludos,

wahib


Prueba esto:-

Paso 1

Agregue todas las bibliotecas para crear pat en Eclipse (significa que todas las bibliotecas hacen referencia a las bibliotecas)

Paso 2

Elimine el archivo R.java y vuelva a construir el proyecto. No te preocupes, R.java se recreará automáticamente.

Chill :)


Si prefiere saber con qué archivos está relacionada la solución, esto es lo que encontré. Simplemente cambia el archivo .classpath a

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
    <classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
    <classpathentry kind="output" path="bin/classes"/>
</classpath>

Reemplace el archivo .classpath en todos los proyectos de la biblioteca y en el proyecto principal de Android. El archivo .classpath está en la carpeta raíz del proyecto Eclipse. Por alguna razón, no olvide agregar sus propias entradas de classpath, si tiene alguna (compare con su versión actual de .classpath).

Creo que este es el mismo resultado que al pasar por los menús de eclipse como componavt-user explicado anteriormente (Eclipse / Configurar Build Path / Order and Export).


Tenía esto para MapActivity. Las compilaciones en Eclipse obtienen NoClassDefFound en el depurador.

Se olvidó de agregar la biblioteca para manifestar, dentro del elemento <Application>...</Application>

<uses-library android:name="com.google.android.maps" />

Todas las respuestas existentes no funcionan para mí porque mi caso es un poco diferente. Tardé unas horas en hacerlo funcionar. Estoy usando Eclipse.

Mi proyecto de Android incluye otro proyecto normal de Java 1.6, que necesita un archivo jar de terceros. El truco es:

  • incluya el jar en el proyecto java normal para que se compile (solo), no lo marque en la pestaña "Ordenar y exportar"
  • también copie este archivo jar en la carpeta "libs" del proyecto de Android para que esté disponible en tiempo de ejecución

Espero que esto ayude a aquellos que tienen escenarios similares como el mío.


Tuve este mismo error con ADT22. Se resolvió revisando "Bibliotecas privadas de Android" en propiedades -> Java build path -> Order and export. Si está utilizando algún proyecto de biblioteca, lo mismo debería hacerse para ellos también.


Tuve este problema y fue causado por no "exportar" la biblioteca. El problema se debió simplemente a que los archivos .class para algunas clases no están disponibles al empaquetar el tiempo de compilación de APK.Funcionará bien sin exportar

En mi caso, estaba usando la clase "CusrsorAdapter" y en "JavaBuildPath-> Order and Export" No verifiqué la compatibilidad con V4 jar. Una vez seleccionado, el problema desapareció.

Para asegurarse de que está obteniendo el error noClassDefFound debido a la razón anterior, verifique su logacat, verá un error de súper clase desconocido en el tiempo de ejecución.


asegúrese de que su archivo jar esté en el directorio libs de su proyecto, ya que está utilizando una versión ADT más nueva con su eclipse.





build