MAC OS 下控制檯啟動 tomcat 中文亂碼 & 日誌亂碼 解決方法

NO IMAGE

使用 startup.sh 指令碼啟動 Tomcat 後,終端輸出亂碼,日誌檔案中的中文也是亂碼,解決方法如下:

修改 tomcat 的啟動指令碼 tomcat_dir/bin/catclina.sh

找到如下幾行:

if [ -z "$LOGGING_MANAGER" ]; then
JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager"
else 
JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER"
fi
修改JAVA_OPTS設定,新增 -Dfile.encoding=UTF-8,完後如下:

if [ -z "$LOGGING_MANAGER" ]; then
JAVA_OPTS="$JAVA_OPTS -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Dfile.encoding=UTF-8"
else 
JAVA_OPTS="$JAVA_OPTS $LOGGING_MANAGER -Dfile.encoding=UTF-8"
fi

一般我們在啟動 tomcat 的時候也會給它配置可用記憶體之類的引數,追加到那個 JAVA_OPTS 裡面也是可以的,一般是放在 catalina.sh 檔案的第一行

JAVA_OPTS='-Xms512m -Xmx1100m -Dfile.encoding=UTF-8'