如何为Android Studio设置JDK?

我无法编译Android 2.1的默认新项目, 因为 (?)Android Studio使用的JDK是JDK 1.7但它应该是JDK 1.6。

要更改它,我转到文件 – > 项目结构,并尝试找到JDK 1.6位置。

但是,当我选择其目录并按确定时,我收到以下错误:

请选择有效的JDK目录

请选择有效的JDK目录

正如您在屏幕截图中看到的那样,我正在尝试将Java 6 OpenJDK 64位设置为新的JDK。

我能做什么? Android Studio与OpenJDK不兼容,我应该使用Oracle JDK吗?

我正在使用OpenJDK 7和Android Studio,它运行得很好。 (我目前甚至没有安装Oracle JDK。)

在您显示的屏幕上(项目结构 – > SKD位置)我有以下JDK位置路径: /usr/lib/jvm/java-1.7.0-openjdk-amd64

通过检查studio.sh ,您还可以将STUDIO_JDKJDK_HOMEJAVA_HOME环境变量之一设置为指向JDK位置。


studio.sh检查STUDIO_JDKJDK_HOMEJAVA_HOME环境变量:

 if [ -n "$STUDIO_JDK" -a -x "$STUDIO_JDK/bin/java" ]; then JDK="$STUDIO_JDK" elif [ -n "$JDK_HOME" -a -x "$JDK_HOME/bin/java" ]; then JDK="$JDK_HOME" elif [ -n "$JAVA_HOME" -a -x "$JAVA_HOME/bin/java" ]; then JDK="$JAVA_HOME" 

所以你可以根据需要设置它们,然后Studio就会把它拿起来。

似乎Android Studio无法识别OpenJDK,因此我需要安装OracleJDK 。

然后我选择Oracle JDK的路径并且它有效!

这对我有用:

  1. 找出java目录:

     $ echo $JAVA_HOME /usr/lib/jvm/java-7-oracle 
  2. 打开Android Studio,然后打开文件 – >项目结构。

  3. SDK Location下,我从上面经过java目录
  4. 等几秒钟,我得到了“0 errores 0 advertencias”

有效! 🙂

我遵循的步骤:

  1. 打开终端并输入echo $JAVA_HOME

  2. 复制终端中显示的路径 – 在Ubuntu终端中按Ctrl + Shift + C复制

  3. 在Android studio中 – 项目结构 – 粘贴复制的路径

  4. 等待软件识别并更新设置

  5. 这解决了无效Jdk设置的问题

如果你有一个带有JDK和Android Studio的./bin文件夹,你可以在终端中运行studio.sh之前设置STUDIO_JDK变量:

 STUDIO_JDK=./bin/jdk/ ./bin/android-studio/bin/studio.sh 

我解决了这个问题。 我使用AS 2.1和JDK1.7,但它需要我更新JDK1.8的某些function。 我下载了java安装文件。 也许我只安装了jre而不是jdk。 所以AS总是警告我“请选择一个有效的JDK目录”。 所以我猜问问题的问题与我一样,你应该安装一个JDK而不是jre。

我认为你可能已经在其他地方安装了jdk,例如/usr/local/java 。 在我的情况下,我也在屏幕截图中显示的目录中看到了相同的文件夹名称。

所以只需检查jdk是否存在于其他地方。