Java เรียกไลบรารีการประมวลผลกราฟิกในเครื่องระหว่างการประมวลผลกราฟิก เมื่อใช้ Java สำหรับการประมวลผลกราฟิก (เช่น การปรับขนาดรูปภาพ ลายเซ็นรูปภาพ และการสร้างรายงาน) จะไม่มีปัญหาหากทำงานบน Windows หากคุณย้ายโปรแกรมไปเป็น Linux/Unix อาจมีข้อผิดพลาดที่ไม่สามารถแสดงกราฟิกได้
ข้อความแจ้ง: "ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์หน้าต่าง X11" เนื่องจากการประมวลผลกราฟิก Linux ต้องใช้ X Server
สารละลาย:
1. หากมีการติดตั้งอินเทอร์เฟซแบบกราฟิกบนเซิร์ฟเวอร์ สามารถแก้ไขได้โดยการตั้งค่าตัวแปรสภาพแวดล้อม: DISPALY=127.0.0.1:0.0
2. หากไม่ได้ติดตั้งอินเทอร์เฟซแบบกราฟิก คุณสามารถเพิ่มพารามิเตอร์เมื่อรัน Java: -Djava.awt.headless=true
3. ใช้ไลบรารี PJA แทนไลบรารีการประมวลผลกราฟิกในเครื่อง
การปรับเปลี่ยน Tomcat มีดังนี้:
เปิดไฟล์ %Tomcat_home%/bin/catalina.sh และเพิ่ม -Djava.io.tmpdir="$CATALINA_TMPDIR" ลงในสคริปต์ที่เริ่ม Tomcat: -Djava.awt.headless=true
"$_RUNJAVA" $JAVA_OPTS $CATALINA_OPTS
-Djava.endorsed.dirs="$JAVA_ENDORSED_DIRS"
-classpath "$คลาสพาธ"
-Dcatalina.base="$CATALINA_BASE"
-Dcatalina.home="$CATALINA_HOME"
-Djava.io.tmpdir="$CATALINA_TMPDIR"
-Djava.awt.headless=จริง
org.apache.catalina.startup.Bootstrap "$@" เริ่มต้น
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
ถ้า [ ! -z "$CATALINA_PID" ];
เสียงสะท้อน $! > $CATALINA_PID fi
fielif [ "$1" = "หยุด" ] ;
หลังจากบันทึกแล้ว ให้รีสตาร์ทและคุณสามารถทำงานกับกราฟิกได้