Fork me on GitHub

linux验证码不加载问题

出现的原因

在windows tomcat下启动项目成功后,访问项目的时候可以看到验证码正常加载,但是在Linux中却看不到验证码的加载。主要原因是因为java.awt.headless 模式。

什么是java.awt.headless模式

是系统的一种配置模式,在该模式下,系统缺少了显示设备,键盘和鼠标。

他可以通过应用容器的配置和java代码的配置。java.awt.headless=true,默认是false。

java代码配置解决的方法

1
System.setProperty("java.awt.headless","true");

应用容器文件配置解决方法

找到 tomcat的bin目录,打开catalina.sh文件配置解决方法

修改该文件的 JAVA_OPTS的参数

1
JAVA_OPTS="-server -Xms128m -Xmx256m -XX:MaxPermSize=256M -XX:PermSize=128M -Djava.awt.headless=true "

然后重启tomcat即可