首页主机资讯Java编译依赖Ubuntu哪些库

Java编译依赖Ubuntu哪些库

时间2026-01-21 22:27:04发布访客分类主机资讯浏览918
导读:Ubuntu 编译 OpenJDK 的依赖清单与版本要点 一、通用基础依赖 构建工具与基础编译链:build-essential、gcc、g++、make、autoconf、zip 字体与图形渲染:libfreetype6-dev、lib...

Ubuntu 编译 OpenJDK 的依赖清单与版本要点

一、通用基础依赖

  • 构建工具与基础编译链:build-essential、gcc、g++、make、autoconf、zip
  • 字体与图形渲染:libfreetype6-dev、libfontconfig1-dev
  • 打印系统:libcups2-dev
  • X11 相关(窗口系统、渲染、测试等):libx11-dev、libxext-dev、libxrender-dev、libxrandr-dev、libxtst-dev、libxt-dev
  • 音频:libasound2-dev
  • 外部函数接口与兼容性:libffi-dev
  • 源码获取工具(OpenJDK 使用 Mercurial):mercurial 以上为多数 OpenJDK 版本在 Ubuntu 上编译的通用依赖,能覆盖 HotSpot 与 AWT/Font/打印等模块所需库。

二、按 OpenJDK 版本的差异化要点

  • OpenJDK 7
    • Bootstrap JDK:需 JDK 7(不能用 JDK 8 编译 JDK 7)
    • 构建工具:建议 Ant 1.9.x(Ant 1.10+ 需要 JDK 8)
    • 其他常见依赖:gawk、m4、ca-certificates、ca-certificates-java
  • OpenJDK 8
    • Bootstrap JDK:需 JDK 7
    • 常见依赖:libx11-dev、libxext-dev、libxrender-dev、libxtst-dev、libxt-dev、libcups2-dev、libfreetype6-dev、libasound2-dev
  • OpenJDK 11/12/16 等更高版本
    • Bootstrap JDK:需 JDK N-1(如编译 JDK 12JDK 11;编译 JDK 16JDK 15
    • 常见依赖:在通用依赖基础上,确保 libfreetype6-dev、libfontconfig1-dev、libcups2-dev、X11 系列、libasound2-dev、libffi-dev、autoconf 已安装 以上版本要点与示例命令可参考各版本的实践记录与配置说明。

三、一键安装示例命令

  • Ubuntu 18.04/20.04/22.04(通用,适合 JDK 11+)
    • sudo apt-get update
    • sudo apt-get install -y build-essential autoconf zip libx11-dev libxext-dev libxrender-dev libxtst-dev libxt-dev libcups2-dev libfreetype6-dev libfontconfig1-dev libasound2-dev libffi-dev mercurial
  • 如需编译 OpenJDK 7,在上述基础上补充:gawk m4 ant-1.9.x ca-certificates ca-certificates-java
  • 如需编译 OpenJDK 8,确保已安装 JDK 7 作为 Bootstrap JDK(可通过 apt 安装 openjdk-7-jdk 或手动解压并设置 JAVA_HOME)

四、配置与排错要点

  • 使用 configure 明确依赖路径(常见为 FreeType)
    • bash configure --with-freetype-include=/usr/include/freetype2 --with-freetype-lib=/usr/lib/x86_64-linux-gnu
  • 指定 Bootstrap JDK(示例)
    • bash configure --with-boot-jdk=/usr/lib/jvm/java-11-openjdk-amd64
  • 常见报错与处理
    • “freetype not found” → 安装 libfreetype6-dev 并在 configure 中正确设置 include/lib 路径
    • “fontconfig missing” → 安装 libfontconfig1-dev
    • “X11/xtst/xt missing” → 安装对应的 libx11-dev、libxtst-dev、libxt-dev
    • “configure: error: Could not find a valid Boot JDK” → 安装并指向 JDK N-1
    • “Ant version too new for JDK 7” → 使用 Ant 1.9.x 编译 JDK 7
    • “sanity check failed” → 检查 LANG、JAVA_HOME/CLASSPATH 清理、依赖是否齐全 以上 configure 参数与排错经验来自多版本的实际编译记录。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Java编译依赖Ubuntu哪些库
本文地址: https://pptw.com/jishu/789177.html
Ubuntu Java编译时出现权限问题怎么解决 Java编译时报错找不到类Ubuntu如何解决

游客 回复需填写必要信息