当前位置: 首页 > article >正文

docker容器部署jar应用导入文件时候报缺少字体错误解决

如题,在导入文件时候报错如下:

Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11FontManager

经查是缺少对应字体,解决办法有两张:

第一种:重新在初始镜像里面安装对应字体,以后每次使用就行,具体方法可参考第二种方法

第二种:如果不想在初始镜像里面安装字体再重新生成镜像可使用如下方法:

        上传字体文件到服务器:我这里使用的字体文件是 fontconfig-packages.tar.gz 这个安装包

        在dockerfile里面配置,在容器启动时候 复制字体进容器,并安装对应字体

        添加内容如下:

# libfreetype.so.6  是宿主机上面的文件 ,可在/usr/lib64/ 目录下面寻找
COPY fontconfig-packages/libfreetype.so.6 /usr/lib64/libfreetype.so.6
# libpng15.so.15   是宿主机上面的文件, 可在/usr/lib64/ 目录下面寻找
COPY fontconfig-packages/libpng15.so.15 /usr/lib64/libpng15.so.15
#复制刚刚上传的文件到容器/app/目录下面
COPY fontconfig-packages /app/

#执行安装字体需要文件
RUN  rpm -ivh --nodeps *.rpm

安装完成后,可使用  ldconfig -p | grep freetype 命令,查看是否安装成功,成功后结果如下图所示

最下面是字体安装包下载链接:

docker应用缺少字体文件资源-CSDN文库


http://www.kler.cn/a/547223.html

相关文章:

  • 已知自动驾驶的一个场景,如变道,如何做好预期功能安全
  • electron下载文件,弹窗选择下载路径,并通知下载进度
  • 故障码循环显示专项--和Deepseek的一次深度交互
  • 第2章:进阶格式与结构化元素
  • MQTT(Message Queuing Telemetry Transport)协议(三)
  • 从VGG到Transformer:深度神经网络层级演进对模型性能的深度解析与技术实践指南
  • 使用PHP爬虫获取1688商品分类:实战案例指南
  • Create Deploy Your Website Quickly - Docusaurus GitHub Pages
  • 力扣100. 相同的树(利用分解思想解决)
  • BPMN.js 与 DeepSeek 集成:打造个性化 Web 培训项目的秘诀
  • (一)获取数据和读取数据
  • [AI.认知]李飞飞团队“50美元”训练出s1-32B,以及研究成果《s1:Simple test- time scaling》,背后的本质?
  • 软考高级《系统架构设计师》知识点(四)
  • 侯捷 C++ 课程学习笔记:C++ 新标准 11/14 的革新与实战应用
  • 2025年02月13日Github流行趋势
  • 【Pico】使用Pico进行无线串流搜索不到电脑
  • Android Studio: RxJava如何取消订阅
  • 工业物联网远程监控系统优化方案,基于巨控GRM553Y-CHE
  • 正则化(Regularization)和正则表达式(Regular Expression)区别
  • C#02项目——Checked用法