运行我的应用程序时,我不断收到错误java.lang.NoClassDefFoundError:com.facebook.android.Facebook。
调用时会发生这种情况:
facebook = new Facebook(APP_ID);
附加错误消息:
无法找到类com.faceample.android.Facebook',从方法com.example.example1.ShareOnFacebook.onCreate
引用我已经通过Eclipse中的Referenced库添加了facebook .jar文件。
有没有人遇到/解决这个问题?
答案 0 :(得分:19)
只需转到Project / Properties / Java Build Path / Order and Export,然后单击jar的复选框。这会将jar设置为“已导出”。您可以在.classparh文件中验证这一点: classpathentry exported =“true”kind =“lib”path =“/ my-jars / facebook-android-sdk-1.2.1.jar”
之后不要忘记清理项目(项目/清洁......)
答案 1 :(得分:3)
我听说使用最新的ADT,您需要将库文件夹命名为“libs”而不是“lib”。但这对我没用。
所以我不得不求助于将我的jar文件移动到“assets”文件夹。这解决了我的问题。
如果你问我,我会完全迟钝。
答案 2 :(得分:2)
我也经常遇到这个问题,“图书馆项目”(应该包含com_facebook_android.jar)根本没有反映在“包浏览器”中。但它很容易解决。
右键单击项目>属性> Android>图书馆 - >删除添加的facebook库项目 - >应用。
然后再次添加facebook库项目并单击“应用”。这次“图书馆项目”将出现在右侧的Package Explorer中。
答案 3 :(得分:1)
您最近是否更新了ADT或Android SDK?尝试删除对facebook库或facebook jar的引用并重新添加它。
他们改变了他们在最新的ADT更新中处理外部库引用的方式,并且它抛弃了我的大量项目。 删除引用并重新添加它们似乎可以解决问题。
答案 4 :(得分:0)
对我有用的解决方案: 我项目中的android-support-v4.jar文件与facebook项目中的文件版本不同。所以我将facebook的支持lib复制到我的项目libs文件夹中,它就像一个魅力。