- 错误
java.lang.RuntimeException: Fontconfig head is null, check your fonts or fonts configuration
at java.desktop/sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1263)
at java.desktop/sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:221)
at java.desktop/sun.awt.FontConfiguration.init(FontConfiguration.java:105)
at java.desktop/sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:696)
at java.desktop/sun.font.SunFontManager$2.run(SunFontManager.java:352)
at java.desktop/sun.font.SunFontManager$2.run(SunFontManager.java:309)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:319)
at java.desktop/sun.font.SunFontManager.<init>(SunFontManager.java:309)
at java.desktop/sun.awt.FcFontManager.<init>(FcFontManager.java:35)
at java.desktop/sun.awt.X11FontManager.<init>(X11FontManager.java:55)
at java.desktop/sun.font.PlatformFontInfo.createFontManager(PlatformFontInfo.java:37)
at java.desktop/sun.font.FontManagerFactory.getInstance(FontManagerFactory.java:51)
at java.desktop/java.awt.Font.getFont2D(Font.java:526)
at java.desktop/java.awt.Font$FontAccessImpl.getFont2D(Font.java:265)
at java.desktop/sun.font.FontUtilities.getFont2D(FontUtilities.java:151)
at java.desktop/sun.java2d.SunGraphics2D.checkFontInfo(SunGraphics2D.java:671)
at java.desktop/sun.java2d.SunGraphics2D.getFontInfo(SunGraphics2D.java:837)
at java.desktop/sun.java2d.pipe.GlyphListPipe.drawString(GlyphListPipe.java:46)
是因为使用的JDK不支持awt包下的字体
解决方法:
-
安装FontConfig组件即可
-
在线
yum install -y fontconfig
# 查看安装结果
fc-list
ls /etc/fonts/
# 重启应用
- 离线
# 按顺序安装 rpm
rpm -ivh fontpackages-filesystem-1.44-8.el7.noarch.rpm
rpm -ivh dejavu-fonts-common-2.33-6.el7.noarch.rpm
rpm -ivh dejavu-sans-fonts-2.33-6.el7.noarch.rpm
rpm -ivh fontconfig-2.13.0-4.3.el7.x86_64.rpm
# 查看安装结果
fc-list
ls /etc/fonts/
# 重启应用 todo yzd
离线安装包下载地址参见: https://download.csdn.net/download/qq_35385687/89913563