在使用Apache POI处理Excel的时候,应用部署到Linux后,遇到一个报错,如下:
Caused by: java.lang.NullPointerException at java.desktop/sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1262) at java.desktop/sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:225) at java.desktop/sun.awt.FontConfiguration.init(FontConfiguration.java:107) at java.desktop/sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:719)
报错中遇到Font相关的字样,猜测可能和字体缺少相关,于是尝试安装fontconfig和字体:
yum install -y fontconfig yum install -y urw-fonts
如果使用的是docker,打包的时候,选用带有fontconfig的基础镜像即可,例如:
#FROM java:8-alpine FROM neduekwunife/openjdk8-jre-alpine-with-fontconfig ADD some-app-0.0.1.jar some-app.jar EXPOSE 7001 ENTRYPOINT ["java","-jar","/some-app.jar","--spring.profiles.active","--spring.profiles.active=prod"]
问题得到解决,特别记录下,备忘。
文章评论