如何在 ubuntu 中找到我当前的 JAVA_HOME?

如何在 ubuntu 中找到我当前的 JAVA_HOME?

如何在 ubuntu 中找到我当前的 JAVA_HOME?安装 maven 时我必须设置 java_home 路径。

答案1

要显示JAVA_HOME变量路径,请在终端中输入:

echo $JAVA_HOME

如果没有出现然后这样设置:

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

这将根据您的 JDK 类型和版本而有所不同。

要再次显示它,请按照第一个命令进行操作。

跟随同一系统上来自不同供应商的 JRE,用于使用不同的 JDK 或在 JDK 之间切换。

答案2

如果你安装了 JDK 1.6(对应 Java 6)或更新版本,你jrunscript的 中应该有一个名为的程序PATH。你可以使用它来查找相应的JAVA_HOME。例如:

$ jrunscript -e 'java.lang.System.out.println(java.lang.System.getProperty("java.home"));'
/opt/local/jdk1.7.0_76/jre

您可以像这样设置环境变量:

$ export JAVA_HOME="$(jrunscript -e 'java.lang.System.out.println(java.lang.System.getProperty("java.home"));')"

请注意,JRE 不包含jrunscript,因此只有在安装 JDK 而不是 JRE 时这才会起作用。

答案3

另一个可移植选项是从中提取 JRE 的绝对路径java

export JAVA_HOME=`type -p java|xargs readlink -f|xargs dirname|xargs dirname`

绝对java路径被传递dirname两次以从末尾删除/bin/java。目录的完整提取如下:

$ type -p java
/usr/bin/java

$ readlink -f /usr/bin/java
/usr/lib/jvm/java-8-oracle/bin/java

$ dirname /usr/lib/jvm/java-8-oracle/bin/java
/usr/lib/jvm/java-8-oracle/bin/

$ dirname /usr/lib/jvm/java-8-oracle/bin/
/usr/lib/jvm/java-8-oracle/

答案4

考虑更新替代机制:

$ update-alternatives --query java | grep 'Value: ' | grep -o '/.*/jre'

您可以像这样设置环境变量:

$ export JAVA_HOME="$(update-alternatives --query java | grep 'Value: ' | grep -o '/.*/jre')"

相关内容