You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ编译报错:字符É被识别为非法字符'‰'如何解决?

修复Java枚举含É字符的编译错误

问题场景

定义包含特殊字符的枚举类:

public enum Types {
   RÉSUMÉ
}

Windows 10系统下用IntelliJ构建时,出现编译错误:

error: illegal character: '\u2030'
RÉSUMÉ
  ^

项目此前可正常编译,JDK在11和17间切换后问题仍存在,且无法替换É字符。

核心原因

文件实际编码与IntelliJ、Javac编译时使用的编码不匹配,导致É被错误解析为Unicode字符\u2030。Windows默认编码为GBK,若项目编码设置变更为非UTF-8,就会触发该问题。

修复步骤

  • 统一IntelliJ编码设置
    打开File > Settings > Editor > File Encodings,将以下三项全部设置为UTF-8:

    • Global Encoding
    • Project Encoding
    • Default encoding for properties files
      勾选Transparent native-to-ascii conversion后保存设置。
  • 配置构建脚本编码
    若使用Maven或Gradle,需在构建脚本中强制指定UTF-8编码:
    Maven(pom.xml):

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
    </properties>
    

    Gradle(build.gradle):

    tasks.withType(JavaCompile) {
        options.encoding = 'UTF-8'
    }
    
  • 转换文件编码为UTF-8
    在IntelliJ中打开枚举类文件,查看右下角显示的当前文件编码。若不是UTF-8,点击编码选项选择Convert to UTF-8,保存文件。

  • 清理缓存并重建项目
    执行Build > Clean Project清理旧编译缓存,再执行Build > Rebuild Project重新构建。

内容的提问来源于stack exchange,提问作者riorio

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 21:20:16