同一台机器上不同项目的控制台输出不正确

问题描述 投票:1回答:2

我花了差不多3天的时间来找出一个大项目的原因

System.out.println( "你好" );

显示为“??”在另一个从头开始构建的项目中,它显示为“你好”。

我正在使用IntellijIdea,但是同样的事情发生在我使用jar文件运行时

java -jar ...

这两个项目之间的唯一两个区别在于构建系统:第一个使用gradle,第二个使用none(只是一个简单的项目)。第二个区别是关于以下代码的输出

     System.out.println("Charset.defaultCharset=" + 
     Charset.defaultCharset());

第一个键入“Charset.defaultCharset = windows-1252”,第二个键入“Charset.defaultCharset = UTF-8”

好吧,我读过:

  1. IntellijIdea中的编码,2个项目之间的所有设置都相同(设置→文件编码→项目编码→IDE编码)
  2. 关于Idea右下角的文件设置编码
  3. 在所有gradle实例的调试配置中尝试-Dfile.encoding = UTF-8然后-Dconsole.encoding = UTF-8
  4. 在cmd控制台做了 set JAVA_TOOL_OPTIONS=-Dconsole.encoding=UTF8 set JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF8
  5. 在gradle.build中使用gradle属性 org.gradle.jvmargs='-Dfile.encoding=UTF-8' systemProp.file.encoding=UTF-8
  6. 通过命令提示符更改了编码 chcp 65001

那些努力让我一无所获。有任何想法吗 ?

顺便说一下,问题几乎相同,但没有答案。我不能写那里因为低声誉Intellij Idea incorrect encoding in console output

the picture with settings in project that don't correctly display the output

java intellij-idea utf-8 console
2个回答
1
投票

好像你已经完成了我想到的大部分内容1 ... 5如果问题仍然存在,请尝试重新启动ide或机器。

试试吧,看看......


0
投票

好吧,最后我知道了!

导航到帮助 - >编辑自定义vm选项...

enter image description here

添加那些:

-Dfile.encoding = UTF-8 -Dconsole.encoding = UTF-8

完全重启想法。

© www.soinside.com 2019 - 2024. All rights reserved.