问题描述
我无法编译Android 2.1的默认新项目because(?)Android Studio使用的JDK是JDK 1.7但它应该是JDK 1.6。
要更改它,我转到文件 – >项目结构并尝试查找JDK 1.6位置。
但是,当我选择其目录并按OK
时,我收到以下错误:
Please choose a valid JDK directory
正如您在屏幕截图中看到的那样,我正在尝试将Java 6 OpenJDK 64位设置为新的JDK。
我能做什么? Android Studio不与OpenJDK兼容,我应该使用Oracle JDK吗?
最佳解决方法
我在Android Studio上使用OpenJDK 7,它运行得很好。 (我目前甚至没有安装Oracle JDK。)
在您显示的屏幕上(项目结构 – > SKD位置)我有以下JDK位置路径:/usr/lib/jvm/java-1.7.0-openjdk-amd64
。
次佳解决方法
通过检查studio.sh
,您还可以将STUDIO_JDK
,JDK_HOME
或JAVA_HOME
环境变量之一设置为指向JDK位置。
studio.sh
按顺序检查STUDIO_JDK
,JDK_HOME
和JAVA_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,所以我需要install the OracleJDK。
然后我选择Oracle JDK的路径并且它有效!
第四种方法
这对我有用:
-
找出java目录:
$ echo $JAVA_HOME /usr/lib/jvm/java-7-oracle
-
打开Android Studio,然后打开File->项目结构。
-
在SDK Location下,我从上面经过java目录
-
等几秒钟,我得到了“0 errores 0 advertencias”
有效! 🙂
第五种方法
我遵循的步骤:
-
打开终端并输入
echo $JAVA_HOME
-
复制终端中显示的路径 – 在Ubuntu终端中的
Ctrl
+Shift
+C
副本 -
在Android工作室 – 项目结构 – 粘贴复制的路径
-
等待软件识别并更新设置
-
这解决了无效Jdk设置的问题