1、问题环境

  • OpneJDK 8u131

2、问题描述

由于使用的是K8S搭配docker的部署方式,因此,需要打包部署应用,在使用基础镜像打包之后,部署到服务器上,excel导出功能会报java.lang.NoClassDefFoundError: sun.awt.X11FontManagerment异常,初步判断为系统缺少字体,因使用到宋体字,因此,将宋体字导入服务器后,系统报Caused by: java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-1.8-openjdk/jre/lib/amd64/libfontmanager.so: Error relocating /usr/lib/jvm/java-1.8-openjdk/jre/lib/amd64/libfontmanager.so: AWTFontDefaultChar: symbol not found 异常,查询后确认为基础镜像错误,因8u131存在bug,故报此错误

3、解决方法

更换基础镜像,要么升级,要么降级;

明确升级能使用的版本有: OpenJDK: 8.144.01, OpenJDK: 8.150

降级能够使用的为:OpneJDK : 8u121 

参考文章:https://mritd.me/2017/09/27/alpine-3.6-openjdk-8-bug/

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐