解決Ubuntu Java編譯時編碼問題可從以下方面入手:
export LANG=en_US.UTF-8
和export LC_ALL=en_US.UTF-8
命令設置系統編碼為UTF-8,可添加到~/.bashrc
中永久生效。javac -encoding UTF-8 YourJavaFile.java
命令,明確指定源文件編碼為UTF-8。-Dfile.encoding=UTF-8
參數設置JVM默認編碼,可在~/.bashrc
中添加export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"
。file -i YourJavaFile.java
命令確認源文件是否為UTF-8編碼,非UTF-8需轉換(如iconv -f GBK -t UTF-8
)。sudo apt install ttf-wqy-zenhei
)并配置字體目錄。關鍵命令示例:
# 設置系統編碼(臨時)
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8
# 編譯時指定編碼
javac -encoding UTF-8 HelloWorld.java
# 永久生效(添加到~/.bashrc)
echo 'export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64' >> ~/.bashrc
echo 'export PATH=$JAVA_HOME/bin:$PATH' >> ~/.bashrc
echo 'export JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"' >> ~/.bashrc
source ~/.bashrc