5

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

调用时会发生这种情况:

脸书 = 新脸书(APP_ID);

附加错误消息:

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

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

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

4

5 回答 5

19

只需转到 Project / Properties / Java Build Path / Order and Export 并单击 jar 的复选框。这会将 jar 设置为“已导出”。您可以在 .classparh 文件中验证这一点:classpathentry exports="true" kind="lib" path="/my-jars/facebook-android-sdk-1.2.1.jar"

之后不要忘记清理你的项目(Project / Clean...)

于 2012-06-01T05:45:26.580 回答
3

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

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

如果你问我,完全智障。

于 2012-04-25T19:52:02.907 回答
2

我也不断遇到这个问题,“库项目”(应该包含 com_facebook_android.jar)根本没有反映在“包资源管理器”中。但它很容易解决。
右键单击项目>属性>Android>库->删除添加的facebook库项目->应用。然后再次添加 facebook 库项目并单击应用。这次“库项目”将出现在右侧的包资源管理器中。

于 2012-05-07T06:20:24.497 回答
1

您最近是否更新了 ADT 或 Android SDK?尝试删除对 facebook 库或 facebook jar 的引用并重新添加它。

他们在最新的 ADT 更新中改变了处理外部库引用的方式,这让我的很多项目都失败了。 删除引用并重新添加它们似乎可以解决问题

于 2012-05-15T17:29:36.627 回答
0

一个对我有用的解决方案:我项目中的 android-support-v4.jar 文件与 facebook 项目中的版本不同。所以我将 facebook 的支持库复制到我的项目库文件夹中,它就像一个魅力。

于 2014-07-10T03:03:27.693 回答