背景:用CheckStyle检查Java代码。有两个Java文件出现了错误“Got an exception - Unexpected character 0xfeff in identifier”。
原因:经过搜索,发线出错的Java文件编码和CheckStyle设置的编码不同。CheckStyle里设置的编码是UTF-8。
在Eclipse查看出错文件的编码如下:
而没有出错的Java文件编码如下:
注意:少了红色框的内容。
用NotePad将打开出错的Java文件,查看文件编码是:
而打开一个没有报错的Java文件,文件编码则是:
也就是说出错的Java文件的编码和其他文件编码不同。
解决:将出错Java文件编码改为和其他文件相同即可。
参考:
http://blog.csdn.net/shrekmu/article/details/1634483
http://osdir.com/ml/java.audit.checkstyle.devel/2007-05/msg00004.html
http://mygolang.blogspot.com/2010/09/invalid-identifier-character-0xfeff.html