最近碰到一个问题:
64位linux报错Could not initialize class java.awt.image.BufferedImage
在WIN平台下运行正常
BufferedImage tag = new BufferedImage(this.width,this.height,BufferedImage.TYPE_USHORT_555_RGB);
tag.getGraphics().drawImage(src,0,0,this.width,this.height,null);
网上有说法换成32位linux即可解决。
不想换系统的话,我的解决方法是:
只需在TOMCAT启动参数中加"-Djava.awt.headless=true /"
启动文件是:/bin/catalina.sh
加入的上下文 是
else
"$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS /
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS" -classpath "$CLASSPATH" /
-Dcatalina.base="$CATALINA_BASE" /
-Dcatalina.home="$CATALINA_HOME" /
-Djava.io.tmpdir="$CATALINA_TMPDIR" /
-Djava.awt.headless=true /*********加入这一行**************
org.apache.catalina.startup.Bootstrap "$@" start /
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
if [ ! -z "$CATALINA_PID" ]; then
echo $! > $CATALINA_PID
fi
fi
elif [ "$1" = "stop" ] ; then
加的时候注意位置(stop是关键的位置标志)
以上无法运行的原因是LINUX字符模式无法支持图形处理