我无法在Mac OS上启动我的Android Studio进行Android开发(10.10.1 - Yosemite)
当前回答
安装最新的JDK (8u102 current) 设置环境变量STUDIO_JDK (java_home输出Java主目录,sed剥离两个文件夹以获得jdk目录) /usr/libexec/java_home -version 1.8 | sed 's/\/Contents\/Home//g' ' 像往常一样启动Android Studio
在每次重启时设置STUDIO_JDK
以上步骤仅适用于当前会话。下面是如何在/Library/LaunchDaemons中创建一个plist文件,在每次引导时运行上面的命令:
sudo defaults write /Library/LaunchDaemons/com.google.studiojdk Label STUDIO_JDK
sudo defaults write /Library/LaunchDaemons/com.google.studiojdk ProgramArguments -array /bin/launchctl setenv STUDIO_JDK `/usr/libexec/java_home | sed 's/\/Contents\/Home//g'`
sudo defaults write /Library/LaunchDaemons/com.google.studiojdk RunAtLoad -bool TRUE
要知道plist的诀窍,请访问http://www.dowdandassociates.com/blog/content/howto-set-an-environment-variable-in-mac-os-x-launchd-plist/
其他回答
我之前卸载了Java 6,安装了Java 7, Android Studio工作正常,然后我升级了Android Studio,我遇到了每个人都有的问题。今天,我从Oracle卸载了Java 7,并安装了Java 8。然后我卸载了Android Studio并安装了最新的。现在一切都很顺利
我也在处理同样的问题,而且我成功了。
可能是JDK版本不对。
现在我安装了jdk1.8,现在没问题了。
在Android工具项目网站上,有一个很好的解释Mac OSX JDK选择。它解决了我的问题。总而言之:
Android Studio需要两个不同的jdk: IDE本身使用的Java版本。 它用来获取Java编译器的JDK版本 这两者可以(而且通常是)相同,但是您可以进行配置 他们单独。尤其是在OSX上,它们经常是这样的 不同。
Yosemite (Mac OSX 10.10)
首先,请确保您拥有最新版本的Java 6 安装;在某些情况下,这已经解决了问题: http://support.apple.com/kb/DL1572 如果不是,请尝试运行最新版本的Java 7或Java 8 如上所述设置STUDIO_JDK。据报道,这个问题已经解决 其他问题(尽管您将得到字体渲染显示 Java 8以上。)
在finder中打开Android Studio的应用程序包,并编辑信息。plist文件。修改密钥JVMversion。用1.6+代替1.6*。这招对我很管用!
编辑:
虽然这在旧版本的Android Studio中是必要的,但不再推荐这样做。详见官方声明
"请注意:不要编辑信息。请选择一个不同的版本。这不仅会破坏应用程序的签名,还会破坏未来的补丁更新。”
安东尼奥•何塞的答案是正确的。
谢谢aried3r !
正如@Gerard的建议,我总结了我的原始评论(https://stackoverflow.com/a/27370525/763459)作为答案,希望它能帮助其他被这个问题困扰的人。
有一种不运行AppleScript的方法: 编辑.bash_profile(如果这个文件不存在,请创建一个新的文件,就像@Gerard建议的那样,你可以第一次使用源文件.bash_profile)。
安装遗留Java(可能需要)http://support.apple.com/kb/DL1572 输入export STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_31.jdk 然后退出终端(或任何你用来编辑这个文件的文本编辑器),运行Android Studio和viola
在OSX 10.10和Android 1.0.1上测试
推荐文章
- 警告:API ' variable . getjavacompile()'已过时,已被' variable . getjavacompileprovider()'取代
- 安装APK时出现错误
- 在流中使用Java 8 foreach循环移动到下一项
- 访问限制:'Application'类型不是API(必需库rt.jar的限制)
- 用Java计算两个日期之间的天数
- 为什么在Mac OS X v10.9 (Mavericks)的终端中apt-get功能不起作用?
- 碎片中的onCreateOptionsMenu
- 如何配置slf4j-simple
- 在Jar文件中运行类
- 带参数的可运行?
- TextView粗体通过XML文件?
- 如何使线性布局的孩子之间的空间?
- 我如何得到一个字符串的前n个字符而不检查大小或出界?
- 我可以在Java中设置enum起始值吗?
- Java中的回调函数