在Android Studio中使用库 - 清空classes.jar

时间:2014-01-15 12:07:38

标签: android maven android-studio android-gradle

我在Android Studio中为build.gradle文件添加了以下依赖项,并成功重新同步项目:

compile 'se.emilsjolander:stickylistheaders:2.1.3'

但是我无法使用此库中的任何类。感觉很奇怪我打开了源代码树,看看是否有什么问题。我注意到以下几点:

Empty classes.jar

您可以看到Android Studio可以找到其他已下载档案的可用类,但不是我在此问题中提到的类。 classes.jar文件报告为空。

我尝试添加旧版本的stickylistheaders库(2.1.3)。还是一个空的classes.jar。

当我开始这个问题时,我发现了类似的帖子here。但该帖子的作者试图将下载的项目包含在settings.gradle中,他最终设法通过“compile”指令包含该库。我的问题是我使用“编译”指令,但下载的存档有一个“空”classes.jar。我还尝试添加该问题中提到的库(即'se.emilsjolander:StickyScrollViewItems:1.0.0')。也是一个空的classes.jar。

一些注意事项:

  • 在build / explosion-bundles中找到的实际classes.jar文件不为空。
  • 我尝试清理项目。我想这会导致所有依赖项被删除并重新下载。但是,在此之后,Android Studio仍然无法在stickylistheaders的classes.jar。
  • 中发现任何类
  • 到目前为止,这个问题仅存在于se.emilsjolander的库中。奇怪的是,这篇文章1的回答者发布了一个屏幕截图,显示他确实看到了非空的class.jar。

更新

  • 我还尝试在我的个人资料目录中删除.gradle的缓存目录,清理项目并重新重建。没有运气。
  • 我可以解压缩有问题的classes.jar。看起来文件没有损坏。

有人知道这里有什么问题吗?感谢。

3 个答案:

答案 0 :(得分:2)

我想我找到了原因:它应该是Android Studio中的一个错误。

https://code.google.com/p/android/issues/detail?id=64008

事实上,尽管在Android Studio中看到了错误,代码仍可以构建和运行。所以这显然是Android Studio的一个问题。

1月27日更新:应该已经在Android 0.4.3中解决了。从release notes开始:

  

修复了库同步(库依赖类)的问题   IDE可能突然找不到资源

答案 1 :(得分:0)

您是否尝试过将项目与Gradle同步?

工具 - > Android - >使用Gradle文件同步项目。 这应该重新加载build.gradle文件并下载(缺少的)依赖项。

答案 2 :(得分:0)

尝试一次并确保您在项目结构中没有收到任何错误,说“you_lib_name未使用/添加”

Open File > Project Structure 

并检查错误。如果显示错误点击它,它将消耗错误并在右侧显示一些选项,单击红色灯泡并选择“添加到依赖”。

erros

这似乎是Studio中的一个错误,将在下一个版本(Android Studio 0.4.3)中修复。