在测试时,测试提出bug验证码无法显示,本地正常,F12查看network发现报错
Could not initialize class sun.awt.X11GraphicsEnvironment
上网查证资料了解到:
验证码采用awt图形处理并内存中生成,测试环境不好用的原因就是java程序要去linux的环境寻找图形工具,要是没有组件 就会报错
所以要在服务器启动脚本上加上这个配置
JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true
一般是在程序开始激活headless模式,告诉程序,现在你要工作在Headless mode下,就不要指望硬件帮忙了,你得自力更生,依靠系统的计算能力模拟出这些特性来: