Win10系统(Mac上貌似没问题),Android Studio版本4.x,不知为何,Build Output中的中文,包括编译器提示、以及错误代码中的中文,都会显示为如下的乱码,菱形问号:
可以猜到javac在使用中文输出各种信息,这点可以通过使用gradle命令在单独打开的命令行中执行build则可以看到正确的中文输出来验证,因此尝试过用 “-Duser.language=en” 等改变jdk locale的方式来使编译器输出英文信息,但是这样虽然可以看到编译错误,但是本身代码里的中文还是会显示成乱码!
最后终于发现了问题的根源,参考这里:
https://stackoverflow.com/questions/1082343/unicode-characters-appear-as-question-marks-in-intellij-idea-console,在Android Studio的Help -> Edit Custom VM Options… 打开的配置文件中加入:
-Dconsole.encoding=UTF-8
-Dfile.encoding=UTF-8
然后重启IDE,再次触发Build,即可看到完全正常的中文错误提示及源码内容显示了:
博主友情提示:
如您在评论中需要提及如QQ号、电子邮件地址或其他隐私敏感信息,欢迎使用>>博主专用加密工具v3<<处理后发布,原文只有博主可以看到。
1 Response
[…] 试过切换VS语言为英文,UE4语言为中文,均不起作用,想起之前的这个问题:Android Studio的Build Output中文输出乱码(菱形问号)问题的解决方法,以为是不是UE4也有类似的设置,查找半天无果,最后发现其实新版Win10(最早哪个版本加上的我也不清楚)里面的区域语言设置中有个UTF-8的选项,虽然到目前用的20H2时仍声称为beta状态,但确实可以解决这个问题: […]