You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu20.04下OpenJDK16运行Swing程序报UnsatisfiedLinkError怎么解决

错误原因

该报错是因为你当前安装的OpenJDK 16为无头(headless)版本,该版本专为无图形界面的服务器环境设计,默认裁剪了AWT、Swing等Java GUI组件依赖的原生系统库,所以缺少运行Swing程序必须的libawt_xawt.so文件。

最佳解决方案

推荐直接安装完整的非无头版OpenJDK 16,一键补全所有GUI相关依赖,无需额外配置:

  • 第一步:更新本地apt包索引
    sudo apt update
    
  • 第二步:安装完整OpenJDK 16包
    sudo apt install openjdk-16-jdk
    
    如果你之前只安装了openjdk-16-jdk-headless,该命令会自动补充缺失的GUI组件,不会重复安装已有内容。
  • 第三步(可选验证):确认缺失库已存在
    ls /usr/lib/jvm/java-16-openjdk-amd64/lib/libawt_xawt.so
    
    执行后正常输出对应文件路径即为安装成功,再次运行你的Swing程序即可正常启动窗口。
可选精简方案

如果你不需要完整JDK,只想单独补全当前缺失的依赖,可执行以下命令:

sudo apt install libawt-xawt-java libxext6 libxrender1 libxtst6

该方案占用存储空间更小,但后续运行其他Java GUI程序时可能仍会遇到缺库问题,因此优先推荐安装完整JDK。


内容的提问来源于stack exchange,提问作者Masudur Rahman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 19:48:03