打包Android的jar

时间:2011-12-15 18:59:53

标签: android jar dependencies

我将一些简单的类模块化到他们自己的项目中,以便在其他地方重用。这些类通常只包含字段和访问器方法(即没有特定的Android)。

它们稍后使用ant的{​​{3}}打包并存储在Maven存储库中。

在Android项目中,我将所述jar文件存储到libs目录中并添加到构建路径中。然而,在运行模拟器时,我得到了与我的包有关的“未找到类”异常。其他第三方库(如GSon)正在被选中。

是否需要执行任何特定步骤才能使jar文件与Android兼容? (jar task似乎另有建议)。我该如何进一步调试?

3 个答案:

答案 0 :(得分:0)

不,只要你不需要,例如来自javax。*的类,不在Android中。如果我是你,我会考虑使用Android Maven Plugin来构建你的版本。查看官方样品集中的morseflash示例。它完全展示了你的场景。

答案 1 :(得分:0)

如果您要重复使用Android组件和资源,则只需要一个Android库项目。在您的情况下,我相信您已将项目添加到构建路径,但我确定您不将其作为依赖项目的一部分导出。

因此,打开项目属性,打开 Java Build Path 选项,并确保在 Order and Export 选项卡中选择JAR作为导出的依赖项。

<强>更新

这是您的参赛作品:

 <classpathentry exported="true" kind="lib" path="libs/tlvince-dao-0.1.0.jar"/>

我还分享了你的要点updated version

答案 2 :(得分:0)

此问题是将jar编译为Java 7. Android does not support Java 7(尚未)的结果。

通过在target="1.6"的{​​{3}}中设置ant来编译为Java 6字节码解决了这个问题。