Java는 그래픽 처리 중에 로컬 그래픽 처리 라이브러리를 호출합니다. 그래픽 처리(이미지 크기 조정, 이미지 서명, 보고서 생성 등)를 위해 Java를 사용하는 경우 Windows에서 실행하면 문제가 없습니다. 프로그램을 Linux/Unix로 이식하면 그래픽이 표시되지 않는 오류가 발생할 수 있습니다.
프롬프트 메시지: "X11 윈도우 서버에 연결할 수 없습니다." 이는 Linux 그래픽 처리에 X 서버가 필요하기 때문입니다.
해결책:
1. 서버에 그래픽 인터페이스가 설치된 경우 환경 변수 DISPALY=127.0.0.1:0.0을 설정하여 문제를 해결할 수 있습니다.
2. 그래픽 인터페이스가 설치되지 않은 경우 Java를 실행할 때 -Djava.awt.headless=true 매개변수를 추가할 수 있습니다.
3. 로컬 그래픽 처리 라이브러리 대신 PJA 라이브러리를 사용하십시오.
Tomcat의 수정 사항은 다음과 같습니다.
%Tomcat_home%/bin/catalina.sh 파일을 열고 Tomcat을 시작하는 스크립트에 -Djava.io.tmpdir="$CATALINA_TMPDIR"을 추가합니다. -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 "$@" 시작
>> "$CATALINA_BASE"/logs/catalina.out 2>&1 &
if [ ! -z "$CATALINA_PID" ];
에코 $! > $CATALINA_PID fi
fielif [ "$1" = "중지" ] ;
저장 후 다시 시작하면 그래픽 작업을 할 수 있습니다.