更新 Android Studio 后 Gradle 构建错误

Posted

技术标签:

【中文标题】更新 Android Studio 后 Gradle 构建错误【英文标题】:Gradle build errors after updating Android Studio 【发布时间】:2013-06-12 02:06:40 【问题描述】:

我刚刚更新了 android Studio,现在当我尝试构建我的应用时,我收到以下 Gradle 错误:

Information: Compilation completed with 2 errors and 0 warnings in 28 sec
Information: 2 errors
Information: 0 warnings
Error: Gradle: : java.lang.NullPointerException
/Users/mhuggins/Sites/SmoothieFlow/build.gradle
    Error:(9, 0) Gradle: A problem occurred evaluating root project 'SmoothieFlow'.
                 > The SDK directory '/Users/mhuggins/Library/Caches/AndroidStudioPreview/compile-server/"/Applications/Android Studio.app/sdk"' does not exist.

Android Studio 版本详情:

Android Studio(I/O 预览版)AI-130.709792

Build #AI-130.709792,于 2013 年 6 月 14 日构建

JDK 1.6.0_43

VM:Apple Inc. 的 Java HotSpot(TM) 64 位服务器 VM。

有谁知道我为什么会得到这个以及我可以做些什么来解决它?

【问题讨论】:

尝试将 ANDROID_HOME 环境变量指向您的 SDK 根目录。我不确定这是否会有所帮助。它对我有所帮助,但问题有所不同。 似乎是对 SDK 引用的一些错误配置。点击Android Studio工具栏中的SDK Manager,检查所有引用是否正确。 看起来我不是唯一一个得到这个的人:code.google.com/p/android/issues/… 【参考方案1】:

尝试在项目的根目录中添加一个名为“local.properties”的新文件(或修改现有文件)。它应该包含

sdk.dir= 

后面是 sdk 位置的路径,在我的例子中

sdk.dir=/Applications/Android Studio.app/sdk

我认为 Android Studio 通常会自动创建一个,但表示不应将其添加到 VCS。我把它放在我的 .gitignore 中,然后在我的 Mac 上克隆了这个项目,导致了这个错误。奇怪的是,在 0.1.5 之前,它在没有文件的情况下工作得很好。

【讨论】:

对于具有多个模块的项目,检查文件是否位于项目的根目录:如果它在模块文件夹中,则似乎没有被拾取(就像从 Eclipse 迁移一样) 酷。我也有同样的问题。将 local.properties 本地设置指向 sdk.dir 即可解决此问题。 根据错误跟踪器的说法,这已在代码中修复,以供将来发布。 android-review.googlesource.com/#/c/61320 我们可以在这里使用环境或 gradle 变量而不是硬编码吗? 我遇到了同样的问题,但是是“ndk.dir”。这对我有用!谢谢!【参考方案2】:

我在 Windows XP 上运行 Android-Studio 时遇到了同样的问题。更新后它一直给我Gradle: A problem occurred evaluating root project的相同错误。所以我要做的是:

1- 确保您知道您的 android studio 目录在我的情况下在哪里 C:\Documents and Settings\UserName\Local Settings\Application Data\Android\android-studio\sdk

2-打开项目根目录

3- 找到 local.properties 文件并在文本编辑器记事本中打开它

4- 更改 sdk.dir="add your SDK directory here without the quotes" 并确保在每个分隔符上使用 double 而不是一个 sdk.dir=C:\\\Documents and Settings\\\UserName\\\Local Settings\\\Application Data\\\Android\\\android-studio\\\sdk

5- 重建你的项目

这是唯一对我有用的方法

【讨论】:

感谢您的分步说明。这与来自 buddahbrot 的解决方案相同,但按照您的步骤终于可以成功了。谢谢=) 您也可以使用正斜杠来代替双反斜杠。据说在这里修复了 [android-review.googlesource.com/#/c/62585/] 但它仍然存在于最新版本(0.2.5)中 我有点困惑;为什么这里有 triple 反斜杠并声明使用 double 反斜杠? ://【参考方案3】:

对我来说,问题是在 OS X 中,我需要将我的 ANDROID_HOME 设置为完整路径,例如:

export ANDROID_HOME="/Users/username/Development/android-sdk-macosx"

使用用户目录简写 (~) 时,Gradle 似乎将其视为相对目录。

【讨论】:

我在 Ubuntu 上遇到了同样的行为。 ~/Android/Sdk 正在扩展到 /home/hillshum/android-studio/~/Android/Sdk 或类似的东西【参考方案4】:

//根据我的android studio项目文件夹

只需进入本地文件并在记事本中打开它,然后根据您的项目sdk文件包含以下行

sdk.dir=C\:/Users/raj/AppData/Local/Android/android-studio/sdk //

【讨论】:

【参考方案5】:

至于我ANDROID_HOME 没用。它显示路径未找到/不存在的错误,这完全是愚蠢的。此外,我尝试使用sdk.dir=D:/android/sdk 创建local.properties - 这也不会出现相同的错误,即此路径不存在。是什么帮助了我 - 一个相对路径,所以当我设置时

sdk.dir=../../../android/sdk

它开始工作

【讨论】:

【参考方案6】:

对于那些对以下内容感到困惑的人: “此文件由 Android Studio 自动生成。# 不要修改此文件——您的更改将被删除!” 当他们打开 local.properties 时:

无论如何它都可以,如果文件被覆盖,只需再次更改它。

要轻松找到您的 sdk 的位置,请尝试: 文件 -> 项目结构 -> Android SDK。

【讨论】:

【参考方案7】:

我遇到了同样的问题,因为我的办公室电脑是 32 位的,而我的家用电脑是 64 位的。 在local.properties文件中,我改了

sdk.dir=C:/Program Files/Android/android-studio/sdk

sdk.dir=C:/Program Files (x86)/Android/android-studio1/sdk

注意 Program Files 的 x86 版本

【讨论】:

【参考方案8】:

我花了很长时间才找到它,但 buddahbrot 建议在项目文件夹的根目录中创建一个 local.properties 文件以包含 sdk.dir= 后跟 sdk 位置的路径,从而解决了这个问题。

之前在 Windows 中设置 ANDROID_HOME 时效果很好,但在 OSX 中,我需要使用 sdk.dir 指定。

【讨论】:

【参考方案9】:

最可能的原因是 local.properties 文件不正确。

检查 local.properties 的根文件夹和 app 文件夹,并确保它们指向 SDK 文件夹。 两个文件都必须指向 SDK 文件夹才能正常工作。

sdk.dir=C:\Users\me\AppData\Local\Android\Sdk

【讨论】:

【参考方案10】:

这对我来说可以摆脱顶部关于 Gradle 错误的“再试一次”。

File >> Project Structure >> Project >> Android Gradle Plugin Version = 3.2.1 and Gradle Version 5.1.1 >> Ok >> Apply

Android Studio >> Build >> Make Project

你可能会没事,但它会再次弹出“更新 Gradle”我选择“不要提醒我这个项目”

【讨论】:

【参考方案11】:

根据我的android studio项目文件夹

只需进入本地文件并在记事本中打开它,然后根据您的项目 sdk 文件包含以下行

sdk.dir=C\:/Users/raj/AppData/Local/Android/android-studio/sdk //

【讨论】:

以上是关于更新 Android Studio 后 Gradle 构建错误的主要内容,如果未能解决你的问题,请参考以下文章

Android Studio无法启动 Gradle ,无法启动守护程序

如何解决android studio2.3导入android studio2.1的问题

Android Studio 中 gradle 版本问题

更新android studio后Android资源编译失败

加载“旧”Android Studio 项目 - 在 Studio 更新后,它将不再打开/编译,要求更新版本?

android studio节省C盘空间的配置方法