上线liunx服务器后验证码不能正常显示,报Could not initialize class sun.awt.X11GraphicsEnvironment
解决方案:
方案二
在tomcat/bin/catalina.sh里加入 JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true
方案二
在tomcat/bin/catalina.sh里 查到-Djava.io.tmpdir="$CATALINA_TMPDIR"这行,并在这一行下加入: -Djava.awt.headless=true \ 共有八处的。
修改好保存再重启即可,此时,如果是用远程登录来修改的话,有可能需要修改catalina.sh这个文件的权限,用在tomcat\bin目录下输入chmod 777 catalina.sh修改即可!
原因:
对于一个Java服务器来说经常要处理一些图形元素,例如地图的创建或者图形和图表等。这些API基本上总是需要运行一个X-server以便能使用AWT(Abstract Window Toolkit,抽象窗口工具集)。