2012-04-20 17 views
5

Sigo recibiendo el error java.lang.NoClassDefFoundError: com.facebook.android.Facebook al ejecutar mi aplicación.java.lang.NoClassDefFoundError: com.facebook.android.Facebook

Esto ocurre cuando se llama:

facebook = new Facebook (APP_ID);

mensaje de error Complementarias:

No se pudo encontrar la clase 'com.facebook.android.Facebook', hace referencia desde com.example.example1.ShareOnFacebook.onCreate método

tengo agregar el archivo .jar facebook a través de las bibliotecas referenciadas en Eclipse.

¿Alguien ha encontrado/solucionar este problema?

+0

has pones tu jar en la carpeta libs? – MAC

+0

es el jar en su classpath en tiempo de ejecución? –

+0

¿Cómo comprobaría que Colin, se disculpa bastante nuevo en este – user983965

Respuesta

19

Solo dirígete a Proyecto/Propiedades/Java Build Path/Order and Export y haz clic en la casilla de verificación de jar. Esto configurará jar como "exportado". Puede verificar esto en el archivo .classparh: classpathentry exported = "true" kind = "lib" path = "/ my-jars/facebook-android-sdk-1.2.1.jar"

No olvides limpie su proyecto después de eso (Proyecto/Limpieza ...)

+1

Esta solución funcionó para mí, brillante! –

+0

esta solución es la mejor. Necesito algunos más votos ... –

+0

mejor solución del problema – Dimon

3

Escuché que con la última ADT debe nombrar la carpeta de su biblioteca "libs" y no "lib". Pero eso no funcionó para mí.

Así que en su lugar tuve que recurrir a moviendo mi archivo jar a la carpeta "assets". Eso solucionó mi problema.

Completamente retardado si me preguntas.

2

Sigo recibiendo este problema también, los "Proyectos de biblioteca" (que deberían contener el com_facebook_android.jar) no se reflejan en absoluto en el "Explorador de paquetes". Pero se resuelve fácilmente.
Haga clic con el botón derecho en Proyecto> Propiedades> Android> Biblioteca -> elimine el proyecto de biblioteca de Facebook agregado -> aplicar. A continuación, agregue el proyecto de biblioteca de Facebook nuevamente y haga clic en aplicar. Esta vez, "Library Projects" aparecerá en su Package Explorer en el lado derecho.

1

¿Recientemente ha actualizado su ADT o SDK de Android? Intente borrar la referencia a la biblioteca de Facebook o Facebook jar y vuelva a agregarlo.

Cambiaron la forma en que manejan las referencias de bibliotecas externas en las últimas actualizaciones de ADT, y se descarta en una tonelada de mis proyectos. Eliminar las referencias y volverlas a agregar parece ser el truco.

0

Una solución que funcionó para mí: el archivo android-support-v4.jar dentro de mi proyecto tenía una versión diferente a la del proyecto de facebook. Así que copié la lib de soporte de Facebook a mi carpeta de libs del proyecto y funcionó a las mil maravillas.

Cuestiones relacionadas