温馨提示×

centosjava配置要注意什么

小樊
36
2026-10-05 18:27:20
栏目: 编程语言

在 CentOS 上配置 Java(JDK) 时,有几个关键点容易踩坑,下面按“安装 → 配置 → 验证 → 常见问题”给你梳理一下。


一、Java 安装方式选择

1️⃣ 使用 yum 安装(推荐新手)

# 查看可用版本
yum list java-*-openjdk

# 安装 JDK 8 示例
yum install -y java-1.8.0-openjdk-devel

✅ 优点:简单、自动管理依赖
❌ 缺点:版本不一定最新


2️⃣ 手动安装 Oracle JDK / 官方 JDK(推荐生产)

# 下载 jdk-xx_linux-x64_bin.tar.gz
tar -zxvf jdk-xx_linux-x64_bin.tar.gz -C /usr/local/

目录示例:

/usr/local/jdk1.8.0_381

二、配置环境变量(非常重要)

1️⃣ 编辑配置文件

vi /etc/profile

在文件末尾添加:

export JAVA_HOME=/usr/local/jdk1.8.0_381
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib

⚠ 注意

  • JAVA_HOME 一定要指到 JDK 根目录
  • 不要指到 bin

2️⃣ 使配置生效

source /etc/profile

三、验证 Java 是否配置成功

java -version
javac -version
echo $JAVA_HOME

✅ 正常输出 Java 版本即可


四、多版本 Java 管理(容易出错)

使用 alternatives(CentOS 推荐)

alternatives --config java

或手动添加:

alternatives --install /usr/bin/java java /usr/local/jdk1.8.0_381/bin/java 300

⚠ 注意:

  • java 和 javac 要分别对应 JDK
  • 有些系统默认用 gcj,要替换掉

五、防火墙 & 端口(Java 应用常见)

如果是 Java Web / Spring Boot:

firewall-cmd --zone=public --add-port=8080/tcp --permanent
firewall-cmd --reload

六、SELinux 注意事项

如果 Java 应用访问端口失败:

getenforce

临时关闭:

setenforce 0

生产建议:配置 SELinux 策略,而不是直接关


七、时间 & 编码问题(容易忽视)

时区

timedatectl set-timezone Asia/Shanghai

编码(避免中文乱码)

export LANG=zh_CN.UTF-8

八、Java 应用后台运行建议

nohup java -jar app.jar > app.log 2>&1 &

或使用:

  • systemd
  • supervisor

九、常见坑总结 ⚠

问题 原因
java command not found PATH 没配或没 source
版本不对 系统自带 java 没切换
启动报错 JAVA_HOME 指错
中文乱码 编码不是 UTF-8
端口连不上 防火墙/SELinux

如果你能告诉我:

  • CentOS 版本(7 / 8 / Stream)
  • Java 版本(8 / 11 / 17)
  • 用途(Spring Boot / Tomcat / 大数据)

我可以直接给你 一套可直接复制的配置方案。

0 踩