java - Android库项目 "java.lang.NoClassDefFoundError"

标签 java android eclipse library-project

好的,首先,我知道很多用户在 stackoverflow 中多次问过这个问题。我查看了所有可能的解决方案,但仍然存在问题。

问题:

我的IDE: Eclipse 标准/SDK

版本:Kepler 版本 版本号:20130614-0229

我有一个 android 库项目,名为 mb-fw-android。在此项目中,属性 -> android -> Is Library - 已选中;

我有另一个名为 mb-revise-android 的项目,它需要使用 mb-fw-android。我试过了:

1) 转到 mb-revise-android -> 属性 -> Android -> 添加 android 库 -> 启动项目

结果是:

02-26 12:04:19.960: E/dalvikvm(11678): Could not find class 'ru.tsi.maksbm.android.config.AndroidFilePropsIOProvider', referenced from method ru.tsi.maksbm.android.revise.model.Model.<init>
02-26 12:04:19.976: E/AndroidRuntime(11678): FATAL EXCEPTION: main
02-26 12:04:19.976: E/AndroidRuntime(11678): java.lang.NoClassDefFoundError: ru.tsi.maksbm.android.config.AndroidFilePropsIOProvider
02-26 12:04:19.976: E/AndroidRuntime(11678):    at ru.tsi.maksbm.android.revise.model.Model.<init>(Model.java:117)
02-26 12:04:19.976: E/AndroidRuntime(11678):    at ru.tsi.maksbm.android.revise.model.Model.createInstance(Model.java:64)
02-26 12:04:19.976: E/AndroidRuntime(11678):    at ru.tsi.maksbm.android.revise.ReviseStartActivity.onCreate(ReviseStartActivity.java:70)
...

2) 添加 android 库项目作为经典依赖项目。 mb-revise-android -> 属性 -> buildPath -> 项目 -> 添加,然后排序并导出 -> 检查 mb-fw-android 项目

还是同样的错误

3) 取消选中 mb-fw-android IsLibrary 复选框,然后尝试 (2)。结果相同

4) 取消选中 mb-fw-android IsLibrary 复选框,像 .apk 一样执行它,进入/bin 文件夹并找到 mb-fw-android.jar。将此 .jar 粘贴到 mb-revise-android“libs”文件夹中,并将“order and export”Android Private Libraries 标记为选中。

结果相同。

摘要:我尝试将 android 库项目添加为 .jar、经典依赖项项目和属性 -> android -> 添加 android 库,在可能的情况下将顺序标记为已选中,但仍然无法正常工作。

如果您知道解决方案,请帮助我。 我使用 Android SDK Platform-tools 19.0.1 和 Android SDK Build-tools 19.0.2

谢谢。

哇,我刚刚找到解决方案。

我们可以在那里看到http://developer.android.com/tools/sdk/eclipse-adt.html#notes关于 ADT 20.0.0 及更高版本的一件有趣的事情:

构建系统

添加了将库项目 list 文件自动合并到包含项目的 list 中。使用manifestmerger.enabled 属性启用此功能。

我尝试将“manifestmerger.enabled=true”添加到我的project.properties 文件中,一切都已完成。问题是构建器不会将我的库项目 list 与 apk 项目 list 合并

最佳答案

尝试将库项目导入到工作空间。 转到您的项目右键->属性->Android 向下滚动。在库中添加您的库项目

关于java - Android库项目 "java.lang.NoClassDefFoundError",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22035746/

相关文章:

java - 使用 Canvas (Android) 绘制半透明位图

java - 从另一个类更改变量值

java - 将两个通配符 HashMap 合并为一个通配符 HashMap

安装 Mac OS X Sierra (Mac OS 10.12) 后 Eclipse scala-ide 将无法启动

Android 设备未出现在 Eclipse 中

java - Eclipse Java OSX 崩溃 - 2013 年 5 月

java - 无法在 android 设备和 node.js 服务器之间连接

java - 出现未知错误

java - 向 Android 应用程序添加通话按钮

java - 解析 XML 时出错 : not well-formed (invalid token) and all R's in red