docker中OpenJDK excel无法导出 java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion
1.背景说明:
本地使用的是jdk1.8版本功能可正常使用,当通过docker打包镜像部署到linux环境下(openJDK1.8)后无法导出excel,报初始化是否,空指针异常,报错如下:
2.原因:
openjdk比jdk1.8简化了一些功能,所以用docker打包的时候更小。excel导出时初始化失败就是因为fontconfig组件就被简化了。
3.解决方案:
docker打包镜像时下载fontconfig组件即可解决
第一步:Linux Centos系统 下载fontconfig组件
yum install fontconfig
第二步:打包镜像时添加下载命令
RUN apk add --update font-adobe-100dpi ttf-dejavu fontconfig
如下截图:
打包镜像时会打印如下日志(下载可能会比较慢):
4.然后重启docker
docker restart 容器ID或容器名
5.打包时发现下载的特别慢,解决方案:切换阿里镜像文章来源:https://www.toymoban.com/news/detail-612328.html
RUN echo -e 'https://mirrors.aliyun.com/alpine/v3.6/main/\nhttps://mirrors.aliyun.com/alpine/v3.6/community/' > /etc/apk/repositories \
&& apk update \
&& apk upgrade \
&& apk --no-cache add ttf-dejavu fontconfig
最终配置如下:
文章来源地址https://www.toymoban.com/news/detail-612328.html
到了这里,关于java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!