1

我正在尝试将 JAR 添加到另一个项目的库中,然后使用该项目内部 JAR 中的资源,但我得到了

java.lang.NoClassDefFoundError: com.xxxxx.dylib.R$drawable.

JAR 内容为:

com.xxxxx.dylib
res
res.layout
res.menu
res.values

当库项目作为依赖项添加时,它可以工作,但是当使用 JAR 时,不会生成 R.java。我相信这是问题所在。是否可以在项目中使用 jar 中的资源?

4

2 回答 2

1

资源不能打包到 jar 中。不引用资源的纯java类可以打包成jar。

您需要将需要引用的项目作为库项目,然后在您的 android 项目中引用相同的项目。

http://developer.android.com/tools/projects/index.html

如果你想使用命令行

http://developer.android.com/tools/projects/projects-cmdline.html

如果您使用 Eclipse,请点击以下链接。

http://developer.android.com/tools/projects/projects-eclipse.html

您可以右键单击要引用的项目,转到属性。选择 Android 并选中 Is Library。

现在在您的 android 项目中引用库项目。

右键单击您的android项目,转到属性,选择android,单击添加浏览库项目和相同的。

于 2013-06-25T07:23:51.737 回答
1

JAR 文件只打包您拥有的 Java 代码,而不是资源。

如果你想在你的项目中使用资源,你必须把整个库项目,标记为库,然后将它作为一个整体添加到你的主项目中。

于 2013-06-25T06:51:40.627 回答