我已经将一些简单的类模块化到他们自己的项目中,以便在其他地方重用。这些类通常只包含字段和访问器方法(即没有Android特定的方法)。
它们随后使用ant的jar task打包并存储在Maven库中。
在一个安卓项目中,我将上述jar文件存储在一个libs目录中,并添加到构建路径中。然而,在运行仿真器时,我得到了一个与我的包相关的"class not found“异常。其他第三方库(如GSon)正在被很好地使用。
要使jar文件与安卓系统兼容,有没有什么特别的步骤?(This reply似乎另有建议)。我如何进一步调试它呢?
发布于 2012-01-27 18:45:04
这个问题是将jar编译到Java7.android does not support Java7(目前)的结果。
通过在ant的javac task中设置target="1.6",编译成Java6字节码,解决了这个问题。
发布于 2011-12-16 03:15:19
不,只要你不需要来自javax.*的类,这些类不在Android中。如果我是你,我会考虑在你的构建中使用Android Maven Plugin。查看官方样本集合中的morseflash示例。它恰好展示了您的场景。
发布于 2011-12-16 03:17:05
如果你打算重用Android组件和资源,你只需要一个Android库项目。在您的示例中,我相信您已将项目添加到构建路径中,但我确信您不会将其导出为依赖项目的一部分。
因此,打开项目属性,打开Java Build Path选项,并确保在Order and Export选项卡中选择JAR作为导出的依赖项。
更新
以下是您的条目应该显示的内容:
<classpathentry exported="true" kind="lib" path="libs/tlvince-dao-0.1.0.jar"/>我还编写了一份你的要点的updated version。
https://stackoverflow.com/questions/8525201
复制相似问题