Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Android Studio中使用库-empty classes.jar_Android_Maven_Android Studio_Android Gradle Plugin - Fatal编程技术网

在Android Studio中使用库-empty classes.jar

在Android Studio中使用库-empty classes.jar,android,maven,android-studio,android-gradle-plugin,Android,Maven,Android Studio,Android Gradle Plugin,我向Android Studio中的build.gradle文件添加了以下依赖项,并成功地重新同步了该项目: compile 'se.emilsjolander:stickylistheaders:2.1.3' 但是,我无法使用此库中的任何类。感觉很奇怪,我打开源代码树,看看是否有什么问题。我注意到以下几点: 你可以看到Android Studio可以找到其他下载档案的可用类,但不是我在这个问题中提到的那个。classes.jar文件报告为空 我尝试添加stickylistheaders库的

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

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

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

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

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

一些注意事项:

  • 在构建/分解包中找到的实际classes.jar文件不是空的
  • 我试着清理这个项目。我想这将导致删除并重新下载所有依赖项。然而,在此之后,Android Studio仍然无法在stickylistheaders的classes.jar中发现任何类
  • 到目前为止,这个问题只存在于se.emilsjolander的库中。奇怪的是,这篇文章的回答者发布了一个屏幕截图,显示他确实看到了一个非空的classes.jar
更新:

  • 我还尝试在我的配置文件目录中删除.gradle的缓存目录,清理项目并再次重建。不走运
  • 我可以解压有问题的classes.jar。看起来文件没有损坏

有人知道这里出了什么事吗?谢谢。

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

工具->安卓->与Gradle文件同步项目。
这应该重新加载build.gradle文件并下载(丢失的)依赖项。

我想我已经找到了原因:它应该是Android Studio中的一个bug

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

1月27日更新:它应该在Android 0.4.3中得到解决。自以下日期起:

修复了库同步(其中库依赖项类 并且IDE突然找不到资源)


请尝试一次,确保项目结构中没有出现任何错误,即“您的库名未使用/添加”

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


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

是的,正如我提到的,我已经成功地重新同步了该项目。澄清一下,这并不是缺少依赖关系。图书馆在那里。请检查屏幕截图。我的问题是关于阻止我使用库的“空”classes.jar。请尝试删除Gradle依赖项缓存,如本文所述:Gradle似乎未能正确下载库。您使用的是Android Studio和Gradle的哪个版本?Android Studio 0.4.2,Gradle 1.9。顺便说一句,我怀疑我的问题与这个bug有关:。然而,据说该修复程序被合并到了0.4.2中,但事实并非如此。它应该是在0.4.3中。可能重复的。按照错误答案中的说明,它被标记为上面的重复。“我相信这会帮你解决问题,直到你得到0.4.3。”埃德蒙尝试一下我发布的答案,它为我解决了问题。非常感谢@ScottBarta。我按照你的指示进行了操作。谢谢,但有趣的是,我在重新导入项目后没有“未使用的依赖项”消息。当你将项目与gradle同步时,这种情况可能再次发生。这是一个错误,在下一版本(0.4.3)中得到了解决,正如@Scott Barta在上述评论中提到的。
Open File > Project Structure