在 CentOS 上验证 Java 配置,通常从 是否安装、环境变量、版本一致性、运行能力 四个方面来检查。下面按常用场景给你一套完整验证方法。
java -version
✅ 正常输出示例:
openjdk version "1.8.0_382"
OpenJDK Runtime Environment (build 1.8.0_382-b05)
OpenJDK 64-Bit Server VM (build 25.382-b05, mixed mode)
❌ 若提示:
command not found
说明 Java 未安装或未加入 PATH
javac -version
echo $JAVA_HOME
✅ 正确示例:
/usr/lib/jvm/java-1.8.0-openjdk
❌ 如果为空,说明未配置
ls $JAVA_HOME
应包含:
bin lib jre
$JAVA_HOME/bin/java -version
如果和 java -version 输出不一致,说明 PATH 与 JAVA_HOME 不匹配
echo $PATH
应包含:
/usr/lib/jvm/java-1.8.0-openjdk/bin
或使用:
which java
✅ 正常结果:
/usr/bin/java
再看真实路径:
ls -l /usr/bin/java
cat > Test.java <<EOF
public class Test {
public static void main(String[] args) {
System.out.println("Java is working!");
}
}
EOF
javac Test.java
java Test
✅ 输出:
Java is working!
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
vi ~/.bashrc
添加:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
生效:
source ~/.bashrc
sudo vi /etc/profile.d/java.sh
内容:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
生效:
source /etc/profile
rpm -qa | grep java
或:
yum list installed | grep java
| 问题 | 原因 |
|---|---|
| java 能用但 JAVA_HOME 为空 | 只配置了 PATH |
| JAVA_HOME 存在但 java 不生效 | PATH 未包含 $JAVA_HOME/bin |
| 多个 Java 版本冲突 | 使用 alternatives --config java |
java -version
javac -version
echo $JAVA_HOME
which java
ls $JAVA_HOME/bin/java
如果你愿意,可以告诉我:
我可以帮你给出 完全针对性的配置方案。