在 CentOS 上 Java 配置失败 是很常见的问题,原因通常不在 Java 本身,而在环境变量、路径、版本冲突或权限上。下面按最常见原因给你梳理一下,你可以对照排查。
很多人写成这样:
export JAVA_HOME=/usr/java/jdk1.8.0_301
但实际路径不存在或拼错。
✅ 正确做法:
ls /usr/java/
ls /usr/lib/jvm/
确认真实路径后再写。
改了 /etc/profile 或 ~/.bashrc 后没生效。
✅ 必须执行:
source /etc/profile
# 或
source ~/.bashrc
只配了 JAVA_HOME,但没加 PATH。
✅ 正确示例:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
CentOS 默认有 OpenJDK,但你又装了 Oracle JDK。
查看当前用的谁:
which java
java -version
✅ 切换版本:
alternatives --config java
chmod -R 755 /usr/java/jdk1.8.0_301
~/.bashrc/etc/profile❌ 写错文件 = 不生效
echo $JAVA_HOME
echo $PATH
which java
java -version
如果 java -version 报错,说明 PATH 或 JDK 没装好。
vi /etc/profile
追加:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
保存后:
source /etc/profile
你可以直接把下面信息发我:
cat /etc/redhat-release)java -version 的结果我可以直接帮你定位是哪一步错了。