OpenJDK验证码无法显示(java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion

之前开发的应用都是基于OracleJDK 1.8来做的,图片验证码显示正常,但是更换成OpenJDK1.8后,验证码无法显示,后台代码抛出异常,异常内容如下,java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion(FontConfiguration.java 1264)
OpenJDK验证码无法显示(java.lang.NullPointerException at sun.awt.FontConfiguration.getVersion_第1张图片
可以看到,猜测是因为验证码的API用到了AWT的东西,但是Openjdk少了些啥。经过不断的折腾,发现后续的OpenJDK同样存在这些问题,在网上找了很多办法也没有用,后来发现需要在操作系统层面安装FontConfig组件。本人环境使用的是Centos 7.3 于是直接安装FontConfig即可,如果你使用的docker容器环境,需要在镜像中进行安装,并执行fc-ache --force(必须执行)

yum install fontconfig
fc-cache --force

你可能感兴趣的:(经验积累)