在Nexus 4上使用Google Cloud Messaging(GCM)获取NoClassDefFoundError

时间:2013-02-24 18:56:47

标签: android google-cloud-messaging

我的类路径中有gcm.jar,因此eclipse编译项目但是在我的Nexus 4设备上失败

02-24 11:52:12.645: E/AndroidRuntime(30240): FATAL EXCEPTION: main
02-24 11:52:12.645: E/AndroidRuntime(30240): java.lang.NoClassDefFoundError: com.google.android.gcm.GCMRegistrar
02-24 11:52:12.645: E/AndroidRuntime(30240):    at com.foo.closethedoor.CloseTheDoorActivity.onCreate(CloseTheDoorActivity.java:77)

2 个答案:

答案 0 :(得分:4)

  

我的类路径中有gcm.jar

它必须位于项目的libs/目录中。不要只是手动操作Eclipse构建路径 - 这将允许您针对JAR 编译,但不会使用您的APK发送 JAR。将JAR放在libs/中就可以了。

答案 1 :(得分:1)

NoClassDefFoundError表示Application无法在Application的文件夹中找到该文件的位置。 建议将所有库文件和jar文件保存在Project的'libs'文件夹中。尝试这样做。它将解决问题。 如果没有,请尝试再次构建代码,然后再将其推送到设备上。