Hi so I am on Win10 and Git 2.35.1.
$ git --version git version 2.35.1.windows.1
I think my Git Bash terminal has some encoding issues.
For example if I type java
the message I got is all mojibake.
(I am not sure why my Java is printing in another language other than English honestly. I did not configure anything special when I install JRE or JDK.)
$ java ▒÷▒: java [-options] class [args...] (ִ▒▒▒▒) ▒▒ java [-options] -jar jarfile [args...] (ִ▒▒ jar ▒ļ▒) ▒▒▒▒ѡ▒▒▒▒▒: -d32 ʹ▒▒ 32 λ▒▒▒▒ģ▒▒ (▒▒▒▒▒▒▒) -d64 ʹ▒▒ 64 λ▒▒▒▒ģ▒▒ (▒▒▒▒▒▒▒) -client ѡ▒▒ "client" VM -server ѡ▒▒ "server" VM Ĭ▒▒ VM ▒▒ client.
My locale is UTF-8 though:
$ locale LANG= LC_CTYPE="C.UTF-8" LC_NUMERIC="C.UTF-8" LC_TIME="C.UTF-8" LC_COLLATE="C.UTF-8" LC_MONETARY="C.UTF-8" LC_MESSAGES="C.UTF-8" LC_ALL=C.UTF-8
And, when using commands like echo
, UTF-8 characters are correctly displayed though:
$ echo 中文中文 中文中文
I tried various methods like git config --global i18n.logOutputEncoding utf-8
and setx LC_ALL C.UTF-8
but java
command still prints a mess.
What is the problem?
Is java
command using some other encoding all together, not UTF-8?
Advertisement
Answer
Check first, as in here, if this works:
java -Duser.language=en -Duser.country=US java -Duser.language=en -Duser.country=US -XshowSettings -version
The second command would show the current settings.
If that work, you can set those options through the environment variable JAVA_TOOL_OPTIONS
.
Although, since JDK9+, JDK_JAVA_OPTIONS
is a valid alternative.