我无法在Mac OS上启动我的Android Studio进行Android开发(10.10.1 - Yosemite)


当前回答

您可以使用用户的启动代理来实现STUDIO_JDK解决方案。这涉及到在您的LaunchAgents目录中创建一个plist文件,位于~/Library/LaunchAgents

创建一个新文件~/Library/LaunchAgents/UNIQUE_KEY。其中UNIQUE_KEY只是一个标识符。我使用com.username.androidstudio。

将以下文本复制到新的plist文件中,并根据下面的说明修改它。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
   <key>Label</key>
   <string>UNIQUE_KEY</string>
   <key>ProgramArguments</key>
   <array>
      <string>sh</string>
      <string>-c</string>
      <string>launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.7.0_71.jdk</string>
   </array>
   <key>RunAtLoad</key>
   <true/>
</dict>
</plist>

你需要做两个修改:

更改UNIQUE_KEY以匹配您的文件名(不带.plist扩展名)。 验证您的JDK路径是否正确,并在必要时进行更改。在本例中,我使用7u71。

这和安东尼奥·何塞的答案是一样的。它根据Android Studio版本1.0 RC3发布说明设置STUDIO_JDK环境变量。这个解决方案使用LaunchAgents目录而不是AppleScript来设置环境变量。因此,这主要是您如何安排和组织系统和环境变量的差异。

其他回答

对于那些在创建启动时启动的脚本时遇到困难的人,作为替代方案,你可以将这个.plist添加到你的LaunchAgents文件夹中。这可能是向系统中添加环境变量的更合适的方式,因为Yosemite决定取消launchd.conf。由于LaunchAgents文件夹的性质,这应该也适用于用户帐户,但我还没有测试。

要做到这一点,创建一个.plist文件,具有以下名称和路径:

/Library/LaunchAgents/setenv.STUDIO_JDK.plist

内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>Label</key>
            <string>setenv.STUDIO_JDK</string>
        <key>ProgramArguments</key>
            <array>
                <string>sh</string>
                <string>-c</string>
                <string>
                    launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk
                </string>
            </array>
        <key>RunAtLoad</key>
            <true/>
        <key>ServiceIPC</key>
            <false/>
        <key>LaunchOnlyOnce</key>
            <true/>
        <key>KeepAlive</key>
            <false/>
    </dict>
</plist>

然后在终端中执行以下命令更改文件属性:

sudo chmod 644 /Library/LaunchAgents/setenv.STUDIO_JDK.plist

sudo chown root /Library/LaunchAgents/setenv.STUDIO_JDK.plist

sudo chgrp wheel /Library/LaunchAgents/setenv.STUDIO_JDK.plist

注:

1)您可能需要更改'jdk1.8.0_25。Jdk '以匹配您的计算机上的版本。

2)我尝试使用“jdk1.8.*”。jdk”来尝试和解释不同的Java *版本,但当我打开Android Studio时,我得到了no JVM错误,即使你运行“echo $STUDIO_JDK”它返回正确的路径。也许有人对如何解决这个问题有一些见解。

把这个家伙装在这里

http://support.apple.com/kb/DL1572?viewlocale=en_US&locale=en_US

你应该很好。

我也有同样的问题,用这种方式解决:

你应该从苹果官方页面安装Java。

http://support.apple.com/kb/DL1572

编辑android工作室的信息。plist文件,以便它使用1.7或任何您已经安装的JVMVersion。将JVMVersion更改为1.6+而不是如上所述的hassternet回答的1.6*应该也可以工作。

上述工作,但不建议参阅RC3发行说明

As of RC 3, we have a better mechanism for customizing properties for the launchers on all three platforms. You should not edit any files in the IDE installation directory. Instead, you can customize the attributes by creating your own .properties or .vmoptions files in the following directories. (This has been possible on some platforms before, but it required you to copy and change the entire contents of the files. With the latest changes these properties are now additive instead such that you can set just the attributes you care about, and the rest will use the defaults from the IDE installation).

Android Studio无法在Mac OSX上加载JVM (Mavericks)

作为一个新手用户,我花了一段时间来理解如何以正确的方式修复这个问题。在搜索和低估了许多关于SO的答案后,我想出了以下步骤,你需要遵循来解决这个问题。

请注意:

尽管最简单的解决方案是更新Info。android studio的Plist。但不建议这样做,也不是正确的修复方法。

官方声明-“请注意:不要编辑信息。请选择一个不同的版本。这不仅会破坏应用程序的签名,还会破坏未来的补丁更新。”

第一个解决方案:如果你从命令行运行Android Studio,你可以将这两行添加到你的.bash_profile中

$ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk

$ open /Applications/Android\ Studio.app

从下次你打开你的终端,你的工作室将自动开始。

第二个解决方案:如果你想从UI(点击图标)运行Android Studio,请遵循以下步骤:

在mac上打开脚本编辑器(可以在spotlight中找到它) 复制到下面一行 执行shell脚本“launchctl setenv STUDIO_JDK /Library/Java/JavaVirtualMachines/jdk1.8.0_25.jdk”

注意:—请根据实际版本修改jdk版本。要检查您使用的是开放终端的哪个版本,请运行以下命令

java -version

3.现在保存(⌘+s)为文件格式:应用程序。最后打开系统设置→用户和组→登录项,添加刚刚创建的新应用程序。

注销和登录再次或您可以手动运行该应用程序以及..

woolaaaa ...对抗自由我们还。

引用:

安东尼奥·何塞的回答

ruario的回答