Javadoc 生成失败。用于编码 ASCII 的不可映射字符

hal*_*rch 5 java build intellij-idea gradle

当我想使用 IntelliJ 和 Gradle 构建项目时,我收到两个错误:

\n\n
Execution failed for task ':javadoc'.\nJavadoc generation failed.\n
Run Code Online (Sandbox Code Playgroud)\n\n

\n\n
error: unmappable character for encoding ASCII\nW??hrung\n
Run Code Online (Sandbox Code Playgroud)\n\n

在这里,我对项目中的一个文件使用了德语元音“\xc3\xa4”。

\n\n

我的三个同事有完全相同的项目,也使用 IntelliJ,并且像我一样在“首选项”>“编辑器”>“文件编码”中具有相同的设置。但这个项目是我的同事们成功构建的。

\n\n

我找到了一个临时解决方案,将以下行放入 build.gradle 中:

\n\n
javadoc {\n    options.encoding = 'UTF-8'\n}\n
Run Code Online (Sandbox Code Playgroud)\n\n

为什么我在构建项目时出现错误?

\n

小智 3

如果您使用 Gradle 任务生成 Javadoc,您的 IntelliJ 配置并不重要,因为 Gradle 只读取 Gradle 配置 (build.gradle)。因此你必须在 Gradle 中设置文件编码。

您可以将 Gradle 配置为始终使用 UTF-8 ->关于如何将编码设置为 UTF-8 的 Stackoverflow 问题