错误记录IntelliJ IDEA 编译 Java 文件报错 ( 错误: 非法字符: ‘ufeff‘ )

Posted 韩曙亮

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了错误记录IntelliJ IDEA 编译 Java 文件报错 ( 错误: 非法字符: ‘ufeff‘ )相关的知识,希望对你有一定的参考价值。

文章目录





一、报错信息



报错信息 :

D:\\002_Project\\003_Java_Work\\Xxx\\src\\main\\java\\cn\\Xxx.java:1: 错误: 非法字符: '\\ufeff'
package xxx;

出现该问题的原因是 IntelliJ IDEA 在创建文件时 , 为文件添加了 BOM 隐藏字符 , 这是 文件的 字节顺序标记 , 一般在 Windows 中的文件中添加 ;

BOM 隐藏字符 是 Byte Order Mark 的缩写 , 在 Unicode 编码中用于标识文件的编码格式 ;





二、修改方案



针对已经报错的类 , 在 Project 面板中 , 右键点击该文件 , 然后 在弹出的菜单中 , 选择 " Remove BOM " 选项 ;

上述方案 , 只能解决已经报错的 Java 代码的 BOM 隐藏字符问题 , 如果创建新文件 , 还是会自动在新代码中添加 BOM 隐藏字符 ;

这里就需要在 IntelliJ IDEA 的全局设置中 关闭 创建文件 自动添加 BOM 隐藏字符 的设置 ;


关闭 BOM 隐藏字符流程如下 :

选择 " 菜单栏 / File / Settings " 选项 ,

在 Settings 对话框的 " Editor / File Encodings " 中 , " Create UTF-8 file " 后的下拉菜单中 , 选择 " with NO BOM " 选项 ;

进行上述设置之后 , 在 IntelliJ IDEA 中 创建的文件 , 就不会自动添加 BOM 隐藏字符 ;

以上是关于错误记录IntelliJ IDEA 编译 Java 文件报错 ( 错误: 非法字符: ‘ufeff‘ )的主要内容,如果未能解决你的问题,请参考以下文章

[java问题记录]IntelliJ Idea编译报错:javacTask: 源发行版 1.8 需要目标发行版 1.8

IntelliJ IDEA告诉我“错误:java:编译失败:内部java编译器错误想法”

错误记录IntelliJ IDEA 编译 Groovy 报错 ( GroovyRuntimeException: This script or class could not be run. )

Java 1.8 和 IntelliJ IDEA 14 中的注解编译错误

错误记录IntelliJ IDEA 编译 Groovy 报错 ( Could not open/create prefs root node SoftwareJavaSoftPrefs )

错误记录IntelliJ IDEA 编译 Groovy 项目报错 ( Groovy SDK is not configured for module )