Could not initialize class sun.awt.X11GraphicsEnvironment解决方案

Could not initialize class sun.awt.X11GraphicsEnvironment 解决方案

报错信息:

Caused by: java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11GraphicsEnvironment

报错原因:

一个Java服务器来处理图片的API基本上是需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集)。所以,问题肯定出在启动server时,未能实现X-Server功能。报错的原因是:linux未能启动XServer服务

解决方案:

1、服务器安装XServer

这个服务一般包含于图形化界面组里, 未亲测;

2、运行headless服务器加-Djava.awt.headless=true

需要JDK1.4以上版本;在有问题的server服务的java -jar启动命令增加选项-Djava.awt.headless=true; ( 亲测,有效)

示例:

#tomcat将此参数加入catalina.sh的JAVA_OPTS参数中
JAVA_OPTS="$JAVA_OPTS $JSSE_OPTS -Djava.awt.headless=true"
#springBoot项目将参数加入到启动命令中
/usr/java/jdk1.8.0_191/bin/java -jar  -Djava.awt.headless=true -Xms128m -Xmx512m  spring-demo-1.0-SNAPSHOT.jar
本作品采用《CC 协议》,转载必须注明作者和本文链接
:kissing_closed_eyes: 我爱小砚 乀(ˉεˉ乀)
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!