问题描述
如何在ubuntu中找到我目前的JAVA_HOME?我必须在安装maven时设置java_home路径。
最佳解决方案
输入终端,
echo $JAVA_HOME
显示JAVA_HOME变量路径。
如果没有出现,那么设置它
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
这将根据您的JDK类型和&而不同。版
用于显示跟随第一个命令。
按照this帖子使用不同的JDK或在JDK之间切换
次佳解决方案
如果您安装了JDK 1.6(对应于Java 6)或更新版本,则应在PATH
中安装名为jrunscript
的程序。您可以使用它来查找相应的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时才能使用。
第三种解决方案
另一个可移植的选项是从javac
中提取JDK的绝对路径:
export JAVA_HOME=`type -p javac|xargs readlink -f|xargs dirname|xargs dirname`
将绝对javac
路径传递至dirname
两次以从末端除去/bin/javac
。完整提取目录如下:
$ type -p javac
/usr/bin/javac
$ readlink -f /usr/bin/javac
/usr/lib/jvm/java-8-oracle/bin/javac
$ dirname /usr/lib/jvm/java-8-oracle/bin/javac
/usr/lib/jvm/java-8-oracle/bin/
$ dirname /usr/lib/jvm/java-8-oracle/bin/
/usr/lib/jvm/java-8-oracle/
第四种方案
考虑到update-alternatives机制:
$ update-alternatives --query java | grep 'Value: ' | grep -o '/.*/jre'
您可以像这样设置环境变量:
$ export JAVA_HOME="$(update-alternatives --query java | grep 'Value: ' | grep -o '/.*/jre')"
第五种方案
只需运行一个命令
sudo update-alternatives --config java
它会给出类似的东西
Es gibt nur eine Alternative in Link-Gruppe java (die /usr/bin/java bereitstellt): /usr/lib/jvm/java-8-oracle/jre/bin/java
从这里你有/usr /lib /jvm /java-8-oracle /作为java home。您现在可以将其导出到JAVA_HOME变量
export JAVA_HOME=/usr/lib/jvm/java-8-oracle/
现在echo $ JAVA_HOME显示它