Ubuntu16.04+tomcat 7.0.68+jdk1.8环境下图片验证码无法显示
1、抛错如下:
javax.servlet.ServletException: java.lang.NoClassDefFoundError: Could not initialize class java.awt.image.BufferedImage
2、解决办法:
1、百度网上的方法说在catalina.sh的“-Djava.io.tmpdir="$CATALINA_TMPDIR" \”行下加上一句“-Djava.awt.headless=true \”,就能解决,但发现修改重启tomcat后仍然无法获取图片。
添加如下:
后来又看了网上说要执行如下命令,重启tomcat就能获取到图片,按照方法执行了一遍,果然图片就出来了,其实这条命令也是在catalina.sh中添加“-Djava.awt.headless=true \”,有所不同的是第一种方法添加的地方不全,其实catalina.sh中是有多处地方需要添加的,用正则都添加上就可以了。
sed -i '/-Djava\.io\.tmpdir=/a\-Djava.awt.headless=true \\' ./catalina.sh
好了,这就是Ubuntu16.04+tomcat 7.0.68+jdk1.8环境下图片验证码无法显示的解决办法了,如有问题可与博主一起交流讨论!