SDK位置未findAndroid Studio + Gradle

我已经看到这个相同的东西张贴了不less次,但每当我尝试将我的项目导入到我的新工作笔记本电脑,我不断收到此错误。

我已经从git(他的btw在我的旧笔记本电脑上运行良好)拉项目。

然后我去了SDK经理,下载了所有的工具,所有的SDK都可用。 在欢迎屏幕中,我进入了configuration – >项目默认值 – >项目结构。 Android的SDK标签说,没有local.properties项目的path将是/应用程序/ Android的Studio.app / SDK这是正确的。 在SDK下,我可以看到所有可用的SDK。 项目SDK被设置为API 18

但是,当我尝试构build我的项目时仍然遇到这个错误。 任何人都可以告诉我,我没有看过吗?

我正在运行gradle 1.7时试图build立从services.gradle.org下载

我有非常相似的情况(有另一台机器上的项目,并将其克隆到我的笔记本电脑,看到了同样的问题),我看着它。

错误消息来自Android gradle插件的Sdk.groovy: https ://android.googlesource.com/platform/tools/build/+/master/gradle/src/main/groovy/com/android/build/gradle/internal /Sdk.groovy

通过查看代码,它的findLocation需要设置androidSdkDirvariables,只有三种方法可以实现:

  • 创buildlocal.properties文件,并有sdk.dirandroid.dir行。
  • 已经定义了ANDROID_HOME环境variables。
  • System.getProperty(“android.home”) – 我不知道它是如何工作的,但它似乎是一个Java的东西。

虽然你的Android Studio知道SDK在那个地方,但我怀疑Android Studio是否将这些信息传递给了Gradle,因此我们看到了这个错误。

我在项目根目录下创build了local.properties文件,并放置了下面一行,并成功地编译了代码。

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

在根目录中创buildlocal.properties文件解决了我的问题,我从GitHub拉出后不知何故丢失了这个文件

这就是我的local.properties文件现在的样子:

 ## This file is automatically generated by Android Studio. # Do not modify this file -- YOUR CHANGES WILL BE ERASED! # # This file must *NOT* be checked into Version Control Systems, # as it contains information specific to your local configuration. # # Location of the SDK. This is only used by Gradle. # For customization when using a Version Control System, please read the # header note. #Sat Feb 06 11:53:03 EST 2016 sdk.dir=/Users/****/Library/Android/sdk 

我在这里find了解决scheme:

http://xinyustudio.wordpress.com/2014/07/02/gradle-sdk-location-not-found-the-problem-and-solution/

只需创build一个文件local.properties并添加一行sdk.dir = SDK_LOCATION

在IntelliJ 12中有相同的问题,即使我有ANDROID_HOME envvariables,它仍然给出相同的错误。 我结束了在我的项目的根目录下创buildlocal.properties文件(我的项目有一个主项目w /几个子模块在自己的目录中)。 这解决了错误。

在根文件夹的local.properties中指定sdk.dir=<SDK_PATH>解决了我的问题。

如果其中一个项目中的macbook pro发生在我身上的任何问题都无法解决 ,那么您可以尝试使用别名命令运行Android Studio,并在每次运行时传递sdk.dir

 alias studio='launchctl setenv ANDROID_HOME '\''/Users/username/Library/Android/sdk'\'' && open -a '\''Android Studio'\''' 

我克隆了libgdx demo,无法导入项目。 它也提醒像这样。

 Env: Eclipse(Android-ADT) window 7 

所以我在项目的根目录下创build了local.properties文件,如下所示

 sdk.dir = D:/adt-bundle-windows-x86/sdk 

我希望这可以帮助别人!

将您在新计算机上创build的项目中的local.properties文件复制并粘贴到包含旧计算机项目的文件夹中,如果您不想(或不知道如何)创build新的local.properties文件。

我注意到,如果我尝试从命令行首先构build,则在新计算机上工作时出现此错误。 但是,如果我从Android Studio构build,则会检索SDK并自动创build目录。 然后,当我从命令行构build它的作品。

为了解决这个问题,我必须在Windows操作系统中定义ANDROID_HOME环境variables。

要做到这一点,我去了系统控制面板。
我在左栏中select了“高级系统设置”。
在“高级”选项卡上,我select了底部的“环境variables”。

在这里,我没有定义一个ANDROID_HOMEvariables。 对于这种情况,我select了“新build…”和:
1)对于“variables名”我inputANDROID_HOME
2)对于“variables值”,我input了我的SDK文件夹的path,例如"C:\...\AppData\Local\Android\sdk"

然后我closures了Android Studio并重新打开,一切正常。

感谢Dibish( https://stackoverflow.com/users/2244411/dibish )他的一个职位,给了我这个想法。