IntelliJ使用错误的编码

时间:2018-01-11 12:19:58

标签: java intellij-idea gradle

我正在使用intelliJ 2017.3 CE,我有一个奇怪的行为,我无法解决,虽然我尝试了我发现的那个主题。

为简单起见,我提取了问题的根本原因,IntelliJ在我的UTF-8案例中没有使用所需的编码。这是我的简单课程:

public static void main(String[] args) {
    System.out.println("äüö");
}

运行此类会产生以下输出:

13:03:47: Executing task 'StringTest2.main()'...
:core:compileJava UP-TO-DATE
:core:processResources UP-TO-DATE
:core:classes UP-TO-DATE
:core:compileTestJava
:core:processTestResources UP-TO-DATE
:core:testClasses
:core:StringTest2.main()
äüö


BUILD SUCCESSFUL in 2s
5 actionable tasks: 2 executed, 3 up-to-date
13:03:49: Task execution finished 'StringTest2.main()'.

在这里你可以看到文件的编码

enter image description here

这是我的intellij安装的设置 enter image description here

我尝试了什么:

  • 已添加到我的gradle.properties:systemProp.file.encoding = utf-8
  • 为该类创建了一个运行配置,我在其中定义了jvm设置:-Dfile.encoding = utf-8
  • 执行了一个测试用例,其中此问题最初是从命令行(gradle)发生的,但也出现了错误
  • 使用intellij在不同的PC(mac)上测试该类,并且注销是按预期进行的。

我不知道还能尝试什么。

1 个答案:

答案 0 :(得分:1)

The console still uses the platform encoding

使用

-Dconsole.encoding=UTF-8