在 CentOS 系统中,Java 的安装路径取决于安装方式。下面按常见情况说明,并教你如何快速找到。
which java
常见输出:
/usr/bin/java
readlink -f /usr/bin/java
示例输出:
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-1.el7_9.x86_64/jre/bin/java
那么 JAVA_HOME 就是:
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-1.el7_9.x86_64
| 安装方式 | 常见 JAVA_HOME |
|---|---|
| OpenJDK (yum) | /usr/lib/jvm/java-1.8.0-openjdk |
| Oracle JDK (手动) | /usr/local/java/jdk1.x.x |
| 多版本 | /usr/lib/jvm/ |
查看所有 Java 版本:
ls /usr/lib/jvm/
CentOS 常用 alternatives 管理 Java:
alternatives --config java
可看到类似:
/usr/lib/jvm/java-1.8.0-openjdk/bin/java
/usr/lib/jvm/java-11-openjdk/bin/java
dirname $(dirname $(readlink -f $(which java)))
输出即为 JAVA_HOME,例如:
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-1.el7_9.x86_64
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
编辑:
vi /etc/profile
添加:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
生效:
source /etc/profile
yum install -y java-1.8.0-openjdk
yum install -y java-1.8.0-openjdk-devel
如果你愿意,可以把下面命令的输出贴出来,我可以直接帮你确认 JAVA_HOME:
java -version
which java
readlink -f $(which java)