java.lang.NoClassDefFoundError:com.facebook.android.facebook

java.lang.NoClassDefFoundError:com.facebook.android.facebook,android,eclipse,facebook,jar,noclassdeffounderror,Android,Eclipse,Facebook,Jar,Noclassdeffounderror,运行应用程序时,我不断收到错误java.lang.NoClassDefFoundError:com.facebook.android.facebook 调用时会发生这种情况: facebook=新facebook(应用程序ID) 附加错误消息: 找不到从方法com.example.example1.ShareOnFacebook.onCreate引用的类“com.facebook.android.facebook” 我已经通过Eclipse中的引用库添加了facebook.jar文件 有人遇到/

运行应用程序时,我不断收到错误java.lang.NoClassDefFoundError:com.facebook.android.facebook

调用时会发生这种情况:

facebook=新facebook(应用程序ID)

附加错误消息:

找不到从方法com.example.example1.ShareOnFacebook.onCreate引用的类“com.facebook.android.facebook”

我已经通过Eclipse中的引用库添加了facebook.jar文件


有人遇到/解决过这个问题吗?

我听说在最新的ADT中,您需要将库文件夹命名为“libs”,而不是“lib”。但这对我不起作用

因此,我不得不求助于将我的jar文件移动到“资产”文件夹中。这解决了我的问题


如果你问我的话,这完全是个迟钝。

我也一直在关注这个问题,“库项目”(应该包含com\u facebook\u android.jar)根本没有反映在“包资源管理器”中。但这很容易解决
右键单击project>Properties>Android>Library->删除添加的facebook库项目->应用。
然后再次添加facebook库项目并单击应用。这一次,“库项目”将出现在右侧的包资源管理器中。

您最近更新过ADT或Android SDK吗?尝试删除对facebook库或facebook jar的引用并重新添加


在最新的ADT更新中,他们改变了处理外部库引用的方式,我的很多项目都放弃了这种方式删除引用并重新添加它们似乎可以做到这一点

只需转到Project/Properties/Java Build Path/Order并导出,然后单击jar的复选框。这将把jar设置为“导出”。您可以在.classparh文件中对此进行验证: classpathentry exported=“true”kind=“lib”path=“/my jars/facebook-android-sdk-1.2.1.jar”


别忘了在那之后清理你的项目(project/clean…

一个适合我的解决方案:
我的项目中的android-support-v4.jar文件与facebook项目中的版本不同。因此,我将facebook的支持库复制到我的project libs文件夹中,效果非常好。

您是否将jar放在了libs文件夹中?jar在运行时是否在您的类路径中?您如何检查Colin,对这个问题的最佳解决方案表示歉意