在 CentOS 上编译 Java(通常指 OpenJDK)所需的时间差异很大,取决于你的 CPU、内存、磁盘、是否增量编译、以及编译目标。下面给你一个真实可参考的范围。
| 配置 | 编译 OpenJDK 8 / 11 / 17 | 说明 |
|---|---|---|
| 4 核 8G | 30~60 分钟 | 普通云服务器 |
| 8 核 16G | 15~30 分钟 | 推荐最低配置 |
| 16 核 32G | 8~15 分钟 | 非常流畅 |
| 32 核 64G | 5~10 分钟 | 大型服务器 |
✅ 以上时间指 完整
make images一次
| 配置 | 编译时间 |
|---|---|
| 2 核 4G | 1.5~3 小时 |
| 1 核 2G | 基本不可用(容易 OOM) |
make JOBS=8
| 磁盘类型 | 影响 |
|---|---|
| HDD | 慢 30%~50% |
| SATA SSD | 正常 |
| NVMe SSD | 最快 |
| JDK 版本 | 编译时间 |
|---|---|
| JDK 8 | 相对快 |
| JDK 11 | 中等 |
| JDK 17 / 21 | 略慢(模块更多) |
make images
# 配置(1~3 分钟)
bash configure
# 编译(主要耗时)
make images
时间分布大致是:
make JOBS=$(nproc)
bash configure --disable-debug-symbols
编译 Java 对 IO 非常敏感
在 8 核 16G 的 CentOS 服务器上,编译 OpenJDK 通常需要 15~30 分钟;低配机器可能 1 小时以上。
如果你愿意,可以告诉我:
我可以给你一个更精确的时间预估和最优编译参数。