如何在Gradle中设置Kotlin源代码编码?

如何在Gradle中设置Kotlin源代码编码?,gradle,character-encoding,kotlin,Gradle,Character Encoding,Kotlin,使用Gradle构建Java或Groovy时,可以这样定义源代码编码: compileJava { options.encoding = 'UTF-8' } compileTestJava { options.encoding = 'UTF-8' } compileGroovy { groovyOptions.encoding = 'UTF-8' } compileTestGroovy { groovyOptions.encoding = 'UTF-8' }

使用Gradle构建Java或Groovy时,可以这样定义源代码编码:

compileJava {
    options.encoding = 'UTF-8'
}

compileTestJava {
    options.encoding = 'UTF-8'
}

compileGroovy {
    groovyOptions.encoding = 'UTF-8'
}

compileTestGroovy {
    groovyOptions.encoding = 'UTF-8'
}
但是,与Kotlin类似的方法不起作用:

compileKotlin {        
    kotlinOptions.jvmTarget = '1.8'
    kotlinOptions.encoding = 'UTF-8'
}
它失败并出现以下错误:

* What went wrong:
A problem occurred evaluating root project 'backend'.
> No such property: encoding for class: org.jetbrains.kotlin.gradle.dsl.KotlinJvmOptionsImpl

实际上,我根本找不到关于Kotlin编译器编码的任何信息。这是否意味着没有这样的选择?那么它使用什么字符集,UTF-8,系统默认值(我希望不是)?

Kotlin源文件在设计上总是UTF-8。无法指定任何其他编码

我很确定它始终是UTF-8,尽管我找不到它的文档。
这是否意味着没有这样的选项?
-在检查了这些源代码后,我可以告诉您:没有。没有这样的选项。您可以检查DSL中的插件。特别是
KotlinJvmOptions*
对您感兴趣的是哪些可用,哪些不可用。不幸的是,我不能告诉你他们使用哪种默认编码……我发现这条语句
所有Kotlin源文件都使用UTF-8字符编码。但这似乎是最佳实践。我想,如果UTF-8有效,而其他编码无效,并且无法指定实际编码,那么您就只能使用UTF-8了。@Natix您的gradle包装器版本是什么?@JTeam视情况而定,我通常会尝试使用可用的最新gradle。这有关系吗?