在 CentOS 上编译 Java 环境(JDK),通常有两种理解,我分别说明,你可以按需选择:
cat /etc/centos-release
sudo yum install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel
devel包必须装,否则没有javac
验证:
java -version
javac -version
sudo yum install -y java-11-openjdk java-11-openjdk-devel
或
sudo yum install -y java-17-openjdk java-17-openjdk-devel
编辑环境变量:
sudo vi /etc/profile
添加(示例 Java 8):
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$JAVA_HOME/bin:$PATH
生效:
source /etc/profile
验证:
echo $JAVA_HOME
如果你是研究 JVM / 修改 JDK 源码,才需要这一步。
sudo yum groupinstall -y "Development Tools"
sudo yum install -y \
autoconf \
alsa-lib-devel \
cups-devel \
libX11-devel \
libXext-devel \
libXrender-devel \
libXtst-devel \
libXt-devel \
libXrandr-devel \
freetype-devel \
fontconfig-devel \
zip \
unzip
git clone https://github.com/openjdk/jdk.git
cd jdk
bash configure
make images
编译完成后:
cd build/*/images/jdk
./bin/java -version
⚠️ 编译非常耗时(10~30 分钟+)
sudo yum install java-1.8.0-openjdk-devel
sudo alternatives --config java
sudo alternatives --config javac
建议:
| 场景 | 推荐 |
|---|---|
| 普通 Java 开发 | yum install java-11-openjdk-devel |
| 服务器运行 | OpenJDK 11 / 17 |
| 学习 JVM | 编译 OpenJDK |
| 生产环境 | Temurin / Oracle JDK |
如果你愿意,可以告诉我:
我可以直接给你最合适的一套命令。