windows下war包正常启动,Linux环境下报错:java.lang.NoClassDefFoundError: Could not initialize class sun.awt.X11.XToolkit。
原因:
对于一个Java服务器来说经常要处理一些图形元素,例如地图的创建或者图形和图表等。这些API基本上总是需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集)。
该问题的解决方法:
在Tomcat/bin/catalina.sh 中增加-Djava.awt.headless=true
如下:
JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"
或在tomcat bin内的startup.sh,第一行添加:
export CATALINA_OPTS=" -Djava.awt.headless=true"
或可试试
在Linux终端执行:
unset DISPLAY
//然后重启服务器,此方法未验证