升级到ADT 22后,库不会再添加到APK中

我有一个相当大的Android应用程序项目引用了一些库项目。 一切都很好,直到我将eclipse ADT插件升级到最新版本(v22)。 当然,我也升级了SDK。 我没有看到在Eclipse中的任何编译错误,但是当我在手机上运行项目,我得到一个NoClassDefFoundError。

java.lang.NoClassDefFoundError: org.acra.ACRA .... 

arca库包含在引用的库项目之一(在libs文件夹中),我可以在包浏览器的“Android专用库”中看到它,正如我所说的,没有编译错误。 该项目运行良好,没有升级ADT的其他人的电脑。

我已经尝试了一大堆东西,包括但不限于:

  • 重新安装android SDK
  • 下载一个新的ADT包
  • 删除我所有的代码,再从git中获取它
  • 将有问题的库复制到应用程序项目中
  • 注释掉使用这个库的代码 – 我只是为下一个库获得相同的错误

一切都没有成功,所以我在这里变得非常绝望。

如果有人能给我一个关于如何解决这个问题的提示,我会非常高兴。

从adt-dev的post引用波士顿的街道:

升级时,新“Android私有库”的“订购和导出”并不总是被检查。 android-support-v4.jar现在在这个“Android私有库”部分。

要解决这个问题,请转到“订购和导出”并检查“Android专用库”。 然后刷新/清理/重build。

在为图书馆项目完成这个“修复”后,您可能需要closures并重新打开任何依赖的项目,因为他们可能不会立即看到这个“修复”。

给这个镜头,运气好的话就能解决你的问题。

在这里输入图像描述

简单地检查Android私有库还不够,我还必须在Android SDK Manager中安装Android SDK构build工具

我也有同样的问题,我的adt22.0.1 。 上面的解决scheme都没有工作。 进一步,当添加一个外部库项目到一个工作项目。我总是检查工作项目的gen文件夹,如果有外部库项目的R (和包名一起),那么只有外部库项目被导出。 而在我的gen文件夹没有显示外部库的包名。

所以我检查了project.properties文件,并没有任何外部库链接目前android.library.reference.1=目前。 所以我手动添加了外部库引用,即使我已经从project->properties->Java Build Path->Projects->Add 。 所以手动编辑project.properties为我做了所有的工作。

在这里输入图像描述

我遇到了一个类似的问题,花了大约3个小时,但没有提出这里的决定没有帮助…最后,我发现了一个问题的来源:我的项目文件&project.properties是只读的。 当我在GUI中进行操作时,Eclipse只是静静地忽略了库依赖关系中的任何更改!

我有同样的问题。 这是因为eclipse项目。 为了解决这个问题,我在eclipse中创build了一个新项目,将我现有的项目类和资源复制到Eclipse中,然后再次启动eclipse并添加了我的自定义包含。

我有类似的问题,我的答案与CommonsWare的略有不同。 这是我的截图:

在这里输入图像描述

在检查库后,我的构build开始重新工作。

我也有同样的问题,

i)添加gson lib作为参考书库
ii)在java Build Path中检查它 http://i.stack.imgur.com/Gldhs.png