·
编程问答 ·
136666
在 CentOS 上“编译 Java”通常有两种含义,不同场景下原因也不同。下面分情况说明,方便你对号入座。
一、在 CentOS 上编译 Java 程序(源代码 → class / jar)
这是最常见的情况。
1️⃣ 为什么在 CentOS 上编译 Java?
- 服务器环境统一
- 生产环境是 CentOS,开发也在 CentOS 上编译,避免“在我机器能跑”的问题。
- 自动化构建 / CI
- Jenkins、GitLab CI 等通常跑在 CentOS 服务器上。
- 无桌面环境
- CentOS 常作为服务器系统,没有 IDE,只能用命令行编译。
- 权限与安全
- 企业内网只允许在指定 CentOS 服务器上编译代码。
2️⃣ 常用方式
yum install java-1.8.0-openjdk-devel
javac HelloWorld.java
二、在 CentOS 上编译 OpenJDK(从源码构建 JDK)
这是“真正编译 Java(JDK 本身)”。
1️⃣ 为什么会有人这么做?
- 定制 JDK
- 学习 JVM
- 适配特殊环境
- 安全合规
2️⃣ 编译 OpenJDK 的基本流程
yum groupinstall "Development Tools"
yum install freetype-devel cups-devel libXtst-devel
bash configure
make images
⚠️ 这通常需要:
- 另一套 Bootstrap JDK
- 大量内存和 CPU(建议 8G+ 内存)
三、为什么不用现成的 JDK,而要编译?
| 场景 |
原因 |
| 普通开发 |
❌ 没必要 |
| 生产部署 |
❌ 直接用 RPM / yum |
| JVM 研究 |
✅ 必须 |
| 定制 JDK |
✅ |
| 国产化 / 嵌入式 |
✅ |
四、CentOS 自身与 Java 编译的关系
- CentOS 是 RHEL 的社区版
- 常用作:
- 因此:
- 编译 Java 程序很常见
- 编译 JDK 本身较少见
五、一句话总结
CentOS 上“编译 Java”通常是为了构建 Java 应用;只有在研究 JVM 或定制 JDK 时,才会真正编译 Java(JDK)本身。
如果你能补充具体场景(比如:是 javac、OpenJDK、Jenkins、Docker、国产化),我可以更精准地解释。
在CentOS上安装LibreOffice(你提到的“liboffice”应为LibreOffice),推荐通过官方仓库或官网RPM包安装,以下是具体方法: 一、通过CentOS官方仓库安装(最简单,版本可能稍旧) CentOS的默认仓库(如AppStream)已包含LibreOffice,直接通过...
在CentOS上编译Java,常见有几种方式,取决于你要编译Java程序还是编译OpenJDK本身。下面分开说明,基本能覆盖90%的使用场景。 一、如果你是「编译Java程序(.java→.class)」 ✅前提:先安装JDK CentOS7/8/Stream都可以用下面方式。 1️⃣查看是否已安装...
如果你打算在CentOS上编译或运行Java(尤其是源码编译、JDK/JVM相关开发),推荐版本如下: ✅首选推荐:CentOS7 原因 最成熟稳定,长期支持(EOL2024-06) 编译工具链完整(gcc、glibc版本适中) OpenJDK官方构建大量基于CentOS7 社区教程、CI环境、Do...
在CentOS上卸载LibreOffice,可以按下面步骤来,基本都能干净卸载。 一、先查看已安装的LibreOffice包 rpm-qa|greplibreoffice 或者 yumlistinstalled|greplibreoffice 二、使用yum卸载(推荐) 如果你是用yum/dnf安装...
在**CentOS上编译Java(通常指编译OpenJDK或自己的Java项目)**是完全可行的,不过要看你具体想做哪一类“编译”。下面分情况说明,并给出实用建议。 一、在CentOS上编译OpenJDK(从源码构建JDK) ✅可行性 完全可行,OpenJDK官方就支持在CentOS/RHEL上编译...
在CentOS上LibreOffice打不开,一般不是单一原因,可以按下面顺序排查(从最常见到进阶)。 一、先确认能不能从终端启动(最关键) 在终端执行: libreoffice--version libreoffice 1️⃣如果提示命令找不到 说明没装或路径不对: whichlibreoffic...
在CentOS上“编译Java”通常有两种理解,我分别说明,你可以对号入座: 一、编译Java程序(.java→.class) 这是最常见的情况。 1️⃣安装JDK(必须) CentOS7/8/Stream都可以用: #查看是否已有 java-version javac-version 如果没有ja...
简短结论:对,也可以在CentOS上编译Java,但方式要看你具体想做什么。 下面分情况说明: 1️⃣如果你是想编译Java程序(.java→.class) ✅完全可以,而且这是最常见的用途 步骤示例 安装JDK(建议用发行版自带或稳定版本) #CentOS7示例 yuminstall-yjava-...