IntelliJ IDE中的Android应用程序中的NoClassDefFoundError

时间:2011-06-08 16:09:16

标签: android intellij-idea

我看到一大堆活动子类在使用意图打开活动时导致NoClassDefFoundError异常。该应用程序编译正常没有任何错误,但在执行时我看到这些NoClassDefFoundError异常。我的理解是编译器工作正常,但链接和APK构建过程不包括所有类,因此构建工作正常但执行失败。

有效的类和不在同一源文件夹中的类,所以我无法立即看到它们失败的原因。所有都在清单中正确引用。

我错过了什么?

代码:

startActivity(new Intent(Dashboard.this, SearchResultFavourites.class));

清单:

<activity android:name=".activity.SearchResultFavourites" android:launchMode="singleTask" />

例外:

Caused by: java.lang.NoClassDefFoundError: myapp.activity.SearchResultFavourites at
myapp.activity.Dashboard.dashBoardBtnClick(Dashboard.java:72)

我很确定这是一个IntelliJ项目配置问题。

2 个答案:

答案 0 :(得分:1)

这可能是库依赖项中缺少的JAR,或者工件未正确打包以进行部署。您应该能够从IntelliJ项目设置中设置两者。

答案 1 :(得分:1)

解决方案相当切实。我正在使用GMaps API .jar构建应用程序,但未能将其设置为外部库。使用正确设置为外部库的GMaps API .jar重建项目解决了这个问题。

我不知道为什么一个库是否在APK中应该导致与完全不相关的类的异常,但我们去了。