Bud*_*ius 147 android gradle android-build android-gradle-plugin
编辑:(aug-2016)
这个问题是从2013年11月开始的(当Android Studio仍处于开发者预览模式时),
当前(AS v2.2,2016年8月)在安装期间,AS要求选择SDK文件夹(或默认安装),它会自动应用于您正在打开的项目.
这意味着任何可能的解决方法或修复都无关紧要,因为问题不再可再生.
原始问题:
我们这个项目有几个已经配置好的模块,并且使用包装器在另一台开发者PC上正确执行.我将完整的git子模块克隆到我的机器中.
下面是我的命令行的直接打印:
$ ./gradlew
FAILURE: Build failed with an exception.
* Where:
Build file '/home/budius/project_name/ActionBar-PullToRefresh/library/build.gradle' line: 1
* What went wrong:
A problem occurred evaluating project ':ActionBar-PullToRefresh:library'.
> SDK location not found. Define location with sdk.dir in the local.properties file or with an ANDROID_HOME environment variable.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
BUILD FAILED
Total time: 6.378 secs
$ echo $ANDROID_HOME
/home/budius/Applications/android-studio/sdk
$
Run Code Online (Sandbox Code Playgroud)
所以,你可以看到ANDROID_HOME就在那里.他们还想要什么?这里有什么不对.
在Ubuntu 13.04上运行
编辑:
我已经在sdk.dir=<path>项目根目录上创建了一个local.properties文件,它可以工作.但这使得代码更难以跨系统构建服务器,因此问题仍然存在.
任何人都知道为什么ANDROID_HOME不起作用以及如何使其工作?
小智 94
我已经解决了这个问题.这对我有用:
在
/ my_current_project /
我创建了一个名为local.properties的文件并放入其中
sdk.dir =/my_current_path_to/SDK
在控制台我需要做
设置ANDROID_HOME =/my_current_path_to/sdk
希望这可以帮助.
Mat*_*men 52
在OSX上,IntelliJ不会获取您在.bash_profile或.bash_rc等中设置的环境变量...
试试这个,替换你自己的sdk位置的值:
launchctl setenv ANDROID_HOME /usr/local/opt/android-sdk
然后重启IntelliJ,鲍勃是你的叔叔.
以下是对该问题的引用,更一般地说明:https: //emmanuelbernard.com/blog/2012/05/09/setting-global-variables-intellij/
gio*_*lla 24
这对我有用:
$ export ANDROID_HOME=/path_to_sdk/
$ ./gradlew
Run Code Online (Sandbox Code Playgroud)
ZoF*_*reX 19
Android Gradle插件仍处于测试阶段,这可能只是一个错误.对我来说,设置ANDROID_HOME是有效的,但我们可能会使用不同的版本(请使用最新版本再试一次,如果有效则告诉我).
还值得设置环境变量ANDROID_SDK以及ANDROID_HOME.
我在某些机器上看到了这方面的问题,所以我们在这些情况下创建了local.properties - 我还注意到最新版本的Android Studio将为您创建此文件并填写sdk.dir属性.
请注意,您不应该将local.properties检查到版本控制中,我们已将其添加到我们的gitignore中,这样它就不会干扰在您正确识别为潜在问题的系统之间移植代码.
And*_*all 15
无论出于何种原因,gradle脚本都没有从环境中获取ANDROID_HOME的值.尝试明确地在命令行上指定它
$ ANDROID_HOME=<sdk location> ./gradlew
Run Code Online (Sandbox Code Playgroud)
joe*_*zac 14
我遇到了同样的问题,虽然我的主模块中有local.properties文件,而且系统级别设置了ANDROID_HOME环境变量.
解决了这个问题的原因是我将我的主项目模块中的local.properties文件复制到整个项目的根目录(即主模块的父目录)
尝试复制模块和根目录中的local.properties文件.应该管用.
Bul*_*kel 13
打开克隆的git存储库时遇到了同样的问题.local.properties文件会自动添加到.gitignore文件中,因为它特定于每台计算机的构建环境,因此不属于repo.
解决方案是导入项目而不是在从git克隆它之后打开它,这迫使android工作室创建特定于您的机器的local.properties文件:
文件>>导入项目>>
小智 10
MAC OSX:
~/.bash_profile
加上:
export ANDROID_HOME=~/Library/Android/sdk
export PATH=${PATH}:${ANDROID_HOME}/tools
export PATH=${PATH}:${ANDROID_HOME}/platform-tools
跑:
source ~/.bash_profile
重新启动终端和Android Studio
如何在MAC OSX上执行此操作:
1)打开终端,编辑:vi ~/.bash_profile如果那里没有文件,只需添加即可.
2)添加(更改为您的用户名并添加此项):
#Java var home:
JAVA_HOME="/usr/libexec/java_home"
ANDROID_HOME="/Users/<YOUR USER NAME>/Library/Android/sdk"
3)跑source ~/.bash_profile.
4)跑 echo $JAVA_HOME; echo $ANDROID_HOME;
5)如果您的输出是:
/usr/libexec/java_home
/Users/<YOUR USER NAME>/Library/Android/sdk
所以你很好.
并且,确保你有java :)
java -version
和gradle :)
gradle --version
Bud*_*ius -3
这个问题来自 2013 年 11 月(当时 Android Studio 仍处于开发者预览模式),
目前(AS v2.2,2016 年 8 月)在安装过程中,AS 要求选择 SDK 文件夹(或安装在默认文件夹中),并且它会自动应用于您要打开的任何项目。
这意味着任何可能的解决方法或修复都是无关紧要的,因为该问题不再可重现。
| 归档时间: |
|
| 查看次数: |
234064 次 |
| 最近记录: |