Debian编译Java的依赖有哪些
小樊
38
2025-12-26 18:41:03
Debian编译Java的常见依赖清单
一、编译普通Java项目
- 基础工具与JDK:安装build-essential(提供gcc/make等)与openjdk--jdk(提供javac等)。示例:sudo apt install build-essential openjdk-11-jdk。
- 构建工具:根据项目选择maven或gradle,用于依赖管理与构建流程自动化。示例:sudo apt install maven 或 sudo apt install gradle。
- 项目特有依赖:如数据库驱动(例:libmysql-java)、JNI本地库(例:libopencv-dev)等,按项目构建文件(pom.xml/build.gradle)引入。
二、从源码编译OpenJDK
- 基础工具链与版本控制:git、build-essential、autoconf、cmake。
- 图形与系统运行时库:libx11-dev、libxext-dev、libxrender-dev、libxtst-dev、libxt-dev、libxrandr-dev、libcups2-dev、libfontconfig1-dev、libasound2-dev、libfreetype6-dev、libzip-dev。
- 引导JDK:需要安装比目标版本低一档的JDK作为Boot JDK(例如编译OpenJDK 21建议使用JDK 20作为引导JDK)。
- 可选加速与健壮性:ccache(编译缓存)、合理设置并行任务与内存参数(如–with-memory-size)。
三、快速安装命令示例
- 普通Java项目(以OpenJDK 11 + Maven为例):sudo apt update && sudo apt install -y build-essential openjdk-11-jdk maven。
- OpenJDK 21源码构建(Debian/Ubuntu系):sudo apt update && sudo apt install -y git build-essential autoconf cmake libx11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev libxrandr-dev libcups2-dev libfontconfig1-dev libfreetype6-dev libasound2-dev libzip-dev。
四、配置与排错要点
- 引导JDK路径:configure 时需通过**–with-boot-jdk=</path/to/boot-jdk>指定;构建OpenJDK 21时常用JDK 20**作为引导JDK。
- 资源与并行:内存建议≥16GB,可用空间≥20GB;可通过**–with-memory-size=20480**(单位MB)与make的并行参数提升稳定性与速度。
- 依赖缺失定位:configure报错“Could not find XXX”时,使用apt search查找对应“-dev”包并安装。
- 产物验证:构建完成后在类似build/linux-x86_64-server-slowdebug/jdk/bin/java路径下找到java,执行**./java -version**确认版本。