CentOS或Ubuntu上运行Java需要安装哪些依赖?

在 CentOS 和 Ubuntu 上运行 Java 需要安装的依赖有所不同,以下是详细说明:

一、通用依赖(两个系统都需要)

1. Java 运行时环境

# OpenJDK(推荐)
# JDK(包含开发工具)或 JRE(仅运行时)

# 或者 Oracle JDK(需要手动下载或添加仓库)

2. 系统基础依赖

  • glibc:标准 C 库(通常已安装)
  • 字体库(如果应用需要显示文字):
    • fontconfig
    • dejavu-fonts 等字体包

二、CentOS/RHEL 系统

1. 安装 OpenJDK

# 查看可用版本
yum search openjdk

# 安装 OpenJDK 11
sudo yum install java-11-openjdk-devel  # 开发版本(含编译器)
sudo yum install java-11-openjdk        # 仅运行时

# 安装 OpenJDK 8
sudo yum install java-1.8.0-openjdk-devel

2. 常用依赖包

# 字体支持
sudo yum install fontconfig
sudo yum install dejavu-sans-fonts

# 其他可能需要的依赖
sudo yum install libXext libXrender libXtst
sudo yum install alsa-lib  # 音频支持
sudo yum install cups-libs  # 打印支持

三、Ubuntu/Debian 系统

1. 安装 OpenJDK

# 更新包列表
sudo apt update

# 安装 OpenJDK 11
sudo apt install openjdk-11-jdk   # 开发版本
sudo apt install openjdk-11-jre   # 仅运行时

# 安装 OpenJDK 8
sudo apt install openjdk-8-jdk

2. 常用依赖包

# 字体支持
sudo apt install fontconfig
sudo apt install fonts-dejavu

# 其他可能需要的依赖
sudo apt install libxext6 libxrender1 libxtst6
sudo apt install libasound2  # 音频支持
sudo apt install libcups2    # 打印支持

四、验证安装

# 检查 Java 版本
java -version

# 检查 Java 编译器(如果安装了 JDK)
javac -version

# 查看 Java 安装路径
which java
readlink -f $(which java)

五、环境变量配置(可选)

1. 设置 JAVA_HOME

# CentOS/RHEL
echo 'export JAVA_HOME=/usr/lib/jvm/java-11-openjdk' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

# Ubuntu/Debian
echo 'export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
source ~/.bashrc

2. 使用 alternatives 管理多个版本(CentOS)

sudo alternatives --config java

六、Docker 环境中的最小依赖

如果使用 Docker,基础镜像通常已包含必要依赖:

# 使用官方 OpenJDK 镜像
FROM openjdk:11-jre-slim  # Ubuntu 基础
# 或
FROM openjdk:11-jre-centos  # CentOS 基础

七、注意事项

  1. 权限问题:确保 Java 安装目录有适当的访问权限
  2. 防火墙:如果 Java 应用需要网络访问,配置防火墙规则
  3. SELinux(CentOS):可能需要调整 SELinux 策略
  4. 内存限制:根据应用需求调整 JVM 内存参数
  5. 时区设置:确保系统时区正确,影响 Java 时间处理

八、快速安装脚本示例

CentOS

#!/bin/bash
sudo yum install -y java-11-openjdk-devel fontconfig dejavu-sans-fonts

Ubuntu

#!/bin/bash
sudo apt update
sudo apt install -y openjdk-11-jdk fontconfig fonts-dejavu

根据你的具体应用需求,可能还需要安装其他特定依赖,如数据库驱动、网络库等。

云服务器