升级到gradle 2.1.0会导致 - 无法扩展ZIP错误

时间:2016-05-05 18:53:54

标签: android android-gradle

我最近将我的Android项目的gradle插件从2.1.0更新为2.1.0-alpha4。但是现在我看到我的所有构建都失败了,如下所示:

Error:Execution failed for task ':App:compileUpdemoDebugJavaWithJavac'.
> Could not expand ZIP '/Users/admin/work/app/libs/lib-android-0.11.0.jar'.

如果我将gradle插件恢复为之前的2.1.0-alpha4版本,请设置环境变量ANDROID_DAILY_OVERRIDE,然后构建我的项目 - 一切正常。

还有其他人遇到过这个问题吗?我相信这与最新的插件有关,因此,人们可能会开始偶然发现这个问题。

任何可能的解决方案? (我知道一些解决方法,比如提取JAR并让gradle跳过JAR提取过程,但这听起来不值得付出努力!)

7 个答案:

答案 0 :(得分:6)

按照以下步骤在Android工作室中自动设置gradle sync。

档案 - > 设置 - > 构建,执行,部署 - > 构建工具 - > gradle - > 选中使用默认gradle包装器(推荐) radiobutton。

同样按照以下步骤重新启动android studio以重启无效缓存。

档案> 使缓存无效/重新启动(您也可以手动删除〜/ Library / Caches / {yourIDEName}中的缓存并重新启动IDE)

然后保存设置并重建项目。

答案 1 :(得分:3)

不幸的是,这里发布的大多数答案都没有成功。虽然从逻辑上讲,@ Kowshick的回答似乎解决了正确的问题 - 即目录权限存在问题。但是,提供777访问权限不是正确的,我在开发文件夹,sdk文件夹,构建文件夹中的默认755应该可以正常工作。但它没有。 :(

最终,我意识到只有3种方法可以解决这个问题:

  1. 等待Google发布其构建工具的更新,这将更新gradle插件,希望解决此问题。
  2. 当你等待上述情况发生时,对我有用的唯一的事情是将gradle插件降级为版本2.0.0。它通过降级工作的事实表明,真正的问题不在于我拥有的目录权限。
  3. 最后,您可以做到这一点相当令人沮丧的事情 - 在您的系统上创建一个单独的用户,并从头开始设置您的项目 - 下载Android Studio,SDK和您的工作区。工作很有可能,但这是一种可怕的工作方式。最重要的是,如果您没有支持快速用户切换的操作系统,那么您将感受到痛苦的世界。
  4. 在我的情况下,我使用选项#2幸存了一段时间,我很幸运,我将硬盘升级为SSD,所以我最终也做了#3选项(因为我做了全新安装)我的操作系统在SSD上。)

    其他信息:
    OS - OS X(El Capitan)
    Android studio - 2.1.0

答案 2 :(得分:1)

从我可以看到你的项目在admin目录中 /Users/admin/work/app/libs/lib-android-0.11.0.jar。

1)您可以尝试将项目路径移动到某个用户目录,例如/ home / username /

2)或者您可以使用

为项目路径授予写入权限
sudo chmod 777 -R /Users/admin/work/app/

猜猜这有帮助。

答案 3 :(得分:1)

试试这个:

1.转到帮助

2. 检查更新

点击更新并重新启动更新到Android Studio 2.1.1。

答案 4 :(得分:0)

在使用Android Studio 2.1.3在使用Studio 1.x创建的现有项目的新PC上打开后,我遇到了同样的问题。 我不得不在项目设置中将Gradle版本降级到2.2.1并将Android插件版本降级到1.5.0以获得成功的apk版本。

答案 5 :(得分:0)

如果您正在使用Windows:

尝试手动解压缩jar文件。在大多数情况下,类不区分大小写,因此Windows系统会遇到麻烦。

如果您使用Windows,则可以在此故障单中获取更多信息:

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

答案 6 :(得分:0)

吹走构建目录 - 如果你使用sudo或不同的用户运行gradle,构建目录可能会有不同的用途,因此无法提取aar。