最近做java支付,发件将支付宝平台提供的demo放到项目中编译,出现下面的错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.6.0:compile (default-compile) on project newsadmin: Compilation failure: Compilation failure:
[ERROR] /E:/myproject/NewsSystem/newsadmin/src/main/java/com/alipay/config/AlipayConfig.java:[1,1] 非法字符: '\ufeff'
[ERROR] /E:/myproject/NewsSystem/newsadmin/src/main/java/com/alipay/config/AlipayConfig.java:[1,10] 需要class, interface或enum
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
问题:
原来这是因为Windows记事本在修改UTF-8文件时自作聪明地在文件开头添加BOM导致的,所以才会导致IDEA不能正确读取.java文件从而程序出错。
解决办法
1.在编辑器IDEA中将文件编码更改为UTF-16,再改回UTF-8即可,其实就相当于刷新了一下文件编码
2.或者将java文件中的内容复制,创建一个同名的新类,并将内容粘贴进去,然后删除原来的文件
希望对你所帮助
个人网站www.read8686.com