使用Html2Image报错Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable

【问题】

centos上的tomcat报错

Exception in thread "http-bio-8080-exec-6" java.lang.InternalError: Can't connect to X11 window server using 'localhost:10.0' as the value of the DISPLAY variable

前台问题是页面的验证码图片加载不出来,而且报500错误

  【原因】

因为用到了图形处理,java程序会去寻找linux上的图形界面是否启动

  【解决办法】

不让java寻找linux图形界面即可,在java启动时加选项java -Djava.awt.headless=true

在/usr/local/tomcat/bin/catalina.sh中开头添加如下参数

JAVA_OPTS=-Djava.awt.headless=true

  【我的tomcat实际效果】

/usr/local/tomcat/bin/catalina.sh  开头加入

JAVA_OPTS="$JAVA_OPTS -XX:PermSize=256m -XX:MaxPermSize=512m -Xms2g -Xmx2g -Djava.awt.headless=true "