解决在linux下在java中使用awt在服务器上处理图片的时候的问题:
我们的服务器上没有安装xwindows和XFree86的相关包。web server用的是 Resin 3.0.19。jdk用的是j2sdk1.4.2_12。
现在安装XFree86-libs,然后在执行命令java 加入参数-Djava.awt.headless=true,即修改resin的http.sh的args加入-Djava.awt.headless=true,问题解决。
总结:
程序使用了Java 的AWT,在linux下运行可能报错,有两种解决方式:
(1) jdk1.4以前版本:需要安装 XFree86和XFree86-Xvfb ,加入 export DISPLAY=hostdomain:0.0
(2) jdk 1.4以后版本,需安装XFree86-libs,在执行命令java 加入参数-Djava.awt.headless=true,表示这是一个没有键盘 没有显示器的无头服务器,意思是机房托管的服务器。