我使用sudo apt-get open-jdk7
在我的Ubuntu操作系统上安装Java。
当我打开终端并输入echo $JRE_HOME
时,它什么也没显示。但后来我java -version
它显示了OpenJDK的正确版本。此外,当我只输入java
时,它就可以了。
不确定Ubuntu如何设置java的路径。
同样javac
有效但我说echo $JAVA_HOME
时看不到任何内容。
我的路径中没有显示java目录路径。
Ubuntu在哪里设置java路径?为什么Ubuntu在安装OpenJDK期间没有设置JAVA_HOME
和JRE_HOME
?
答案 0 :(得分:5)
一种常见的误解是,Java某种程度上需要将JAVA_HOME
,JRE_HOME
或类似的环境变量设置为有效。
事实上,java
和javac
(和相关的)可执行文件并不真正关心这些变量。它们只需要在PATH
上(或者如果不在PATH
上就可以通过完整路径执行)并通过查看“靠近它自己”找到它们的相关安装(即可执行文件通常安装在相对于JVM文件的已知位置。)
有一些第三方脚本使用JAVA_HOME
和/或JRE_HOME
来查找Java安装(Apache Tomcat就是一个众所周知的例子),但Java可执行文件本身并不需要这些变量。
关于Ubuntu如何找到可执行文件很容易回答:使用which java
和which javac
找出键入这些命令时执行的可执行文件。在基于Debian的系统上,它们通常是the alternatives systems的一系列符号链接,指向实际的可执行文件。
答案 1 :(得分:1)
“ubuntu在哪里设置java路径?”,ubuntu没有自动设置open-jdk-java-path。 试试
find / -name "java"
找到javac。并写下
export JRE_HOME="xxx"
(其中xxx是open-jdk-jre的基础。)
顺便说一下:open-jdk没什么问题。你最好使用sun-jdk。答案 2 :(得分:1)
在许多Linux发行版中,Ubuntu在其路径中都有/ etc / alternative。如果输入:
which java
然后你会得到
/etc/alternatives/java
如果输入:
ls -l /etc/alternatives/java
然后你会得到
/etc/alternatives/java -> /usr/lib/jvm/<your java version>
一些mors -l -s可以帮助你全面了解。