Cordova运行android cant fin JAVA_HOME,即使它已正确设置

时间:2017-01-19 16:35:30

标签: java android cordova java-home

当我在项目中运行cordova run android时,我有这个输出

ANDROID_HOME=/home/ronaizacard/Android/Sdk/
JAVA_HOME=/usr/lib/jvm/java-7-oracle/jre/bin/java

ERROR: JAVA_HOME is set to an invalid directory: /usr/lib/jvm/java-7-oracle/jre/bin/java

Please set the JAVA_HOME variable in your environment to match the
location of your Java installation.

Error: /home/ronaizacard/work/apk/platforms/android/gradlew: Command failed with exit code

但是,当我检查JAVA_HOME变量时,我得到:

# echo $JAVA_HOME
/usr/lib/jvm/java-7-oracle/jre/bin/java

我的JAVA_HOME是在.zshrc中定义的,我已经仔细检查过它是否被设置为源。

JAVA_HOME=/usr/lib/jvm/java-7-oracle/jre/bin/java
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin
export JAVA_HOME
export JRE_HOME
export PATH

运行java -version也确认JAVA_HOME设置正确且位于PATH上。

➜  ~ java -version
java version "1.7.0_80"
Java(TM) SE Runtime Environment (build 1.7.0_80-b15)
Java HotSpot(TM) 64-Bit Server VM (build 24.80-b11, mixed mode)

所以我的问题是Gradle如何/为什么找到/ usr / lib / jvm / default-java,更重要的是我如何将它指向正确的目录?

我也试过找到Gradle文件并更改bin上的/usr/lib/jvm/default-java但是cordova没有这个

我正在运行64位Ubuntu LTS 16

1 个答案:

答案 0 :(得分:1)

我改变JAVA_HOME=/usr/lib/jvm/java-7-oracle并且工作正常