我之前已经在 stackoverflow 上看到过与此类似的问题,但我一直无法找到解决我的特定问题的方法。我想要做的是将多个外部 jar 文件添加到我可以在 eclipse 或命令行中构建的 android 项目中,并将 jar 文件捆绑到 apk 中,以便程序可以在设备上正确运行。
我发现,如果我只是通过将所有外部 jars 放入 .classpath 文本文件中并将它们声明为导出来将它们添加到我的项目中,那么虽然我的程序编译得很好,但生成的 apk 不包含 jar 文件,并且在设备上运行它会导致 noclassdeffounderror。
2694392答案中的解决方案对我来说真的不起作用,因为如果我必须将 jar 文件放在项目自己的 libs 目录中,那么我最终将与如何设置源代码控制树进行斗争......加上, 不得不手动将 jar 文件复制到本地文件夹中,我已经尝试说它是外部的,这很烦人。理想情况下,构建系统应该将任何外部 jar 文件复制到运行时希望它们全部单独存在的位置。我。实际上,我的问题似乎与问题5312478的海报最相似,但是如果我必须重载 jar.libs.dir 的值以引用我可能保存 jar 文件的位置,正如该问题的答案中所建议的那样,那么我无法轻松地从不同的目录导入不同的 jar 文件。
我有一个普遍的感觉,将所有外部 jar 从它们的必要位置复制到必要的 libs 文件夹作为完全打包 apk 之前的一个阶段可能就足够了,但是作为一个 ant 的新手,我是不确定到底要在 custom-rules.xml 文件中放什么,这样脚本本身就不必具体知道我想要包含哪些 jar(即,它们都列在单个属性或其他东西中)
非常感谢您提供的任何帮助。
*编辑:虽然当然非常感谢所有有帮助的尝试,但我鼓励那些可能正在考虑用类似于在stackoverflow上其他地方回答的内容来回答这个问题的人简要地重新阅读上面为什么我提到的类似问题的答案以上并不完全适用于我的问题。谢谢你。