从未被App引用的android库项目引用的jar。的NoClassDefFoundError

时间:2012-10-10 18:37:03

标签: java android jar adt android-library

我搜索了SO并尝试了我遇到的所有解决方案但似乎没有任何效果。我尝试过的是hereherehereherehere给出的解决方案,但似乎没有任何效果。

正如其中一些问题所述,我有一个包含在Android应用程序(AA)中的安卓库(AL)中的java库(简称J)。我已经将库添加到两者的库中(还尝试将其添加到AA并包含在AL中,反之亦然,只是在AL中并期望Android依赖关系来处理它)但是那个或其他任何东西都没有工作。

我正在使用最新的工具(版本20.0.3)。 android库和应用程序的构建android版本是2.2,min SDK是5.

我可以在应用程序的android依赖项中看到java库,但我得到了NoClassDefFoundException并运行时间。

我怎样才能让它发挥作用?

android库必须引用一个jar,因为它包含一些我需要隐藏的加密逻辑。该库正在创建用于分发,该应用程序只是用于测试库的非常简单的东西。

1 个答案:

答案 0 :(得分:0)

有两个不同但相关的问题导致了这个问题。

  1. Java库,J编译为合规级别1.7(我的系统默认)。这需要达到1.5,即Android的合规级别。 (合规水平可能在未来发生变化)。
  2. J库也在使用J2SE库进行编译。我不得不用与我的应用程序相同的api级别的anroid.jar替换它。
  3. 然后事情也没有用,并且由于某些原因它在我删除项目并在新目录中重新创建后开始工作。(IMP:首先进行代码备份)。