轉帖|其它|編輯:郝浩|2010-10-09 13:34:27.000|閱讀 779 次
概述:Java在圖形處理時調用了本地的圖形處理庫。在利用Java作圖形處理(比如:圖片縮放,圖片簽名,生成報表)時,如果運行在windows上不會出問題。如果將程序移植到Linux/Unix上的時候有可能出現圖形不能顯示的錯誤。本文將介紹Java在Linux下不能處理圖形的解決辦法。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
Java在圖形處理時調用了本地的圖形處理庫。在利用Java作圖形處理(比如:圖片縮放,圖片簽名,生成報表)時,如果運行在windows上不會出問題。如果將程序移植到Linux/Unix上的時候有可能出現圖形不能顯示的錯誤。
提示信息:"Cant connect to X11 window server"這是由于Linux的圖形處理需要一個X Server服務器。(關于Linux的圖形處理模式參考//www.douzhe.com/docs/fbsd2/5.htm)
解決辦法:
1.如果服務器上安裝有圖形界面,可以通過設置環境變量:DISPALY=127.0.0.1:0.0解決。
2. 如果沒有安裝圖形界面,可以在Java運行時加上參數:-Djava.awt.headless=true。
3. 使用PJA庫來代替本地圖形處理庫。
參考://www.idautomation.com/kb/xwindow-error.html Tomcat的修改如下:
打開 %Tomcat_home%/bin/catalina.sh 文件在文件的86%處,啟動Tomcat的腳本中加上:-Djava.awt.headless=true \
參考:
"$_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
fielif [ "$1" = "stop" ] ; then
保存后,重新啟動就可以處理圖形了。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn
文章轉載自:網絡轉載