验证码无法显示:Could not initialize class sun.awt.X11GraphicsEnvironment 解决方案

在本地运行好好的,但是放到服务器上验证码就显示不出来。

验证码无法显示:Could not initialize class sun.awt.X11GraphicsEnvironment 解决方案_第1张图片

于是百度,发现有两种答案。

在catalina.sh里加上一句“-Djava.awt.headless=true \”   或者加上下面那个

 JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"

我自己的理解是开启无头模式,就是没有这个包你也可以跑起来。。

验证码无法显示:Could not initialize class sun.awt.X11GraphicsEnvironment 解决方案_第2张图片

结果发现不行,又有答案说,还是不行。

验证码无法显示:Could not initialize class sun.awt.X11GraphicsEnvironment 解决方案_第3张图片

于是发现百度找不到答案了。

然后去Stack Overflow找

验证码无法显示:Could not initialize class sun.awt.X11GraphicsEnvironment 解决方案_第4张图片

如果试了以上还不成功的,那可能是虚拟机的jdk位数与系统位数不一致,centos64位,而jdk如果是32位,会在64位系统里找不到对应的依赖。最后换了从jdk1.7 32位换成jdk1.8 64位解决了问题。

验证码无法显示:Could not initialize class sun.awt.X11GraphicsEnvironment 解决方案_第5张图片

另外,我目前在做一个租房网站,完全是自己练手用,有兴趣的,可以一起做,一起学习一起锻炼。

这是我的源码地址https://gitee.com/faith111

你可能感兴趣的:(bug)