at java.desktop/sun.awt.FontConfiguration.getVersion 空指针异常问题解决

问题描述

linux 上运行 java 程序 会出现如下空指针异常

Caused by: java.lang.reflect.InvocationTargetException: null
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[na:na]
	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62) ~[na:na]
	at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[na:na]
	at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490) ~[na:na]
	at java.desktop/sun.font.FontManagerFactory$1.run(FontManagerFactory.java:84) ~[na:na]
	... 71 common frames omitted
Caused by: java.lang.NullPointerException: null
	at java.desktop/sun.awt.FontConfiguration.getVersion(FontConfiguration.java:1262) ~[na:na]
	at java.desktop/sun.awt.FontConfiguration.readFontConfigFile(FontConfiguration.java:225) ~[na:na]
	at java.desktop/sun.awt.FontConfiguration.init(FontConfiguration.java:107) ~[na:na]
	at java.desktop/sun.awt.X11FontManager.createFontConfiguration(X11FontManager.java:719) ~[na:na]
	at java.desktop/sun.font.SunFontManager$2.run(SunFontManager.java:367) ~[na:na]
	at java.base/java.security.AccessController.doPrivileged(Native Method) ~[na:na]
	at java.desktop/sun.font.SunFontManager.<init>(SunFontManager.java:312) ~[na:na]
	at java.desktop/sun.awt.FcFontManager.<init>(FcFontManager.java:35) ~[na:na]
	at java.desktop/sun.awt.X11FontManager.<init>(X11FontManager.java:56) ~[na:na]
	... 76 common frames omitted

20200329182058.png

经过查找资料发现是缺少依赖库 dejavu 这种字体库
可以通过安装 ttf-dejavufontconfig 来解决

注意 部分源中 ttf-dejavu 不叫这个名字,可以通过搜索 dejavu 查找依赖,或者直接安装 fontconfigfontconfig 中有包含该字体

参考资料


作者: 浪子
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 浪子 !
下一篇 
Element UI 菜单高亮问题 Element UI 菜单高亮问题
Element ui 菜单可以采用路由的形式或者非路由的形式,为了简单大部分都会采用路由的形式,这样只要菜单可以不用额外操作就可以跳转,高亮 。 不过在一次菜单高亮的时候却出现一个问题,路由明明是正确的,但高亮却时好时坏, 有时候高亮会跳到其他菜单,在当前菜单下刷新确实好的,切换后又不行;无赖之下只能切回非路由模式,然而问题依然存在;经过一个多小时的排查终于发现时在循环的时候菜单的 key 有问
2020年4月2日