Android&间接引用jars = BAD?

时间:2011-10-07 00:09:24

标签: android eclipse

我有一个Android项目(在Eclipse中),它引用了另一个普通的Java项目。这个其他普通的Java项目引用了一些jar库。我的问题:

在编译时,一切似乎都很好。但是,当我运行Android项目时,我得到一个与间接引用的jar库中的类相关的类未找到错误。

我在Java构建设置中将它们标记为“已导出”。如果我在Android项目中手动包含jar文件它可以工作,但是,有时(大多数时候)我得到一个“java.lang.IllegalArgumentException:已经添加:...”错误,因为dalvik编译器似乎找到了两次这些jar(即使我从“导出”列表中删除了jar,也会发生这种情况。)

任何想法如何解决这个问题?

谢谢, 丹尼尔

2 个答案:

答案 0 :(得分:1)

这是因为您所包含项目的依赖项成为当前项目的依赖项。我会:

  1. JAR您的依赖项目,并将其作为JAR包含在您当前的项目中。
  2. 在您当前的项目中包含您的依赖项目的相关JAR。
  3. 这有助于保持您的工作空间更整洁,并确保您当前的项目始终在本地拥有适当的资源。您始终可以创建脚本来构建依赖项目,并将JAR存放到当前项目中。

答案 1 :(得分:0)

好吧,我现在已经使用构建脚本解决了所有依赖项目的问题,因此我只能引用该jar(并避免引用Java项目)。

可以工作,但现在我需要在每次进行更改时重建(并在eclipse中点击刷新,以便它意识到引用的jar已经更改)。仍然希望有一个“真正的”解决方案..