目的是让所有用户都能直接使用java、javac等命令,并能通过$java_home正确引用jdk路径;需先确认jdk安装路径,再在/etc/profile.d/java.sh中设置java_home、path和classpath,最后source生效并验证。

在 CentOS 系统中配置 Java 全局环境变量,目的是让所有用户都能直接使用 java、javac 等命令,并能通过 $JAVA_HOME 正确引用 JDK 路径。关键在于把变量写入系统级配置文件,并确保其被所有 shell 会话加载。
确认 JDK 已安装
先检查是否已装 JDK:
java -version
若提示命令未找到,需先安装:
- CentOS 7 及以下:
sudo yum install java-1.8.0-openjdk-devel - CentOS 8+:
sudo dnf install java-1.8.0-openjdk-devel
安装后,用以下命令确认真实安装路径(很重要,不能硬写):
readlink -f $(which java)
输出类似 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.392.b08-1.el7_9.x86_64/jre/bin/java,则 JDK 主目录是它的上级两级:
→ 去掉 /jre/bin/java,再向上一级 → 得到 /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.392.b08-1.el7_9.x86_64
创建全局环境变量脚本
推荐方式:在 /etc/profile.d/ 下新建 .sh 文件(比直接改 /etc/profile 更规范、易维护):
sudo vi /etc/profile.d/java.sh
写入以下内容(注意替换为你实际的 JDK 路径):
Java开发手册规约集合,基于阿里巴巴Java开发手册(嵩山版)。 涵盖7大维度:编程规约、异常日志、单元测试、安全规约、MySQL数据库、工程结构、设计规约。 当用户需要:(1) 编写或审查Java代码 (2) 检查命名/代码规范 (3) 处理异常和日志 (4) 编写单元测试 (5) 安全编码 (6) 数据库设...
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.392.b08-1.el7_9.x86_64 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
保存退出。
使配置立即生效
对当前终端运行:
source /etc/profile.d/java.sh
新打开的终端会自动加载该文件(因为 /etc/profile 默认会 source /etc/profile.d/*.sh)。
验证是否成功
执行以下三条命令,应有合理输出:
echo $JAVA_HOME java -version javac -version
若 java -version 和 javac -version 都返回版本号,且 echo $JAVA_HOME 输出与你设置的路径一致,说明全局配置完成。
注意:不要漏掉 tools.jar(编译相关)和 dt.jar(调试支持),尤其开发场景;普通运行可省略 CLASSPATH 行,但保留更稳妥。
不复杂但容易忽略
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南










