我的 Android 项目引用了 Android SDK 中未包含的外部类文件。我在 Eclipse 中将这些类正确添加为外部库。代码编译没有问题。但是当我尝试运行该应用程序时,我得到了 DalvikVM 的 ClassNotFoundException,尽管所有必要的类都已被移植。
我错过了什么吗?
我做的步骤。
- 在 eclipse android 项目中创建新文件夹。
- 在此文件夹中复制必要的类。
- 通过 eclipse 将文件夹添加到类路径。
- 程序
- 编译
- 作为安卓应用程序运行
- --> 异常
编辑:
我现在尝试添加外部 jar。当 eclipse 重建构建路径时出现以下错误:
“警告:忽略不带有关联 EnclosingMethod 属性的匿名内部类的 InnerClasses 属性。(此类可能是由损坏的编译器生成的。)”
这显然适用于 jar 中的每个类文件。
和:“Dex Loader]无法执行 dex:null” 和:“转换为 Dalvik 格式失败:无法执行 dex:null”
最佳答案
Android 开发工具 (ADT) - 我假设您正在使用它来构建您的项目 - 只会选择位于您的 Android 项目的“libs”文件夹中的外部 jar。否则,它们将不会被提取并转换为 Dalvik 字节码并添加到您的 classes.dex 文件中:
http://mylifewithandroid.blogspot.com/2010/01/jars-on-classpath.html
不幸的是,它不会添加您刚刚添加到 Java 项目构建路径的类。
关于android - 引用外部类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2537759/