编译工程时报java:[1,0] illegal character: \65279问题排查与解决过程

在使用SVN回退并重新编译Java文件时遇到'java:[1,0] illegal character: 65279'错误。问题源于文件的Byte Order Mark (BOM)。解决方法是在EditPlus中设置UTF-8编码不带BOM,然后保存文件。BOM用于标识文件的UTF-8编码,但在某些情况下可能导致编译问题。" 83419107,7863994,C# Unity 依赖注入实战指南,"['C#开发', 'Unity框架', '依赖注入', '接口设计', '配置管理']
摘要由CSDN通过智能技术生成

最近开发人员通过SVN提交了xxx.java文件,因发布时该包有问题需要回退,故SCM将该xxx.java文件用editplus打开删除了新添的一行,删除后重新编译打包,却报了如下异常:

java:[1,0] illegal character: \65279
表面看着该文件确实没错,看不出来问题,后来从SVN上更新下代码以后,发现本地也不报错,后来通过Eclipse查看了该xxx.java类的属性,才发现玄机所在:

编译有问题的文件属性:(注意最下面一行 Byte Order Mark is UTF-8  (BOM)


编译正常的文件属性:


看来问题出在 Byte Order Mark is UTF-8  (BOM)上。因为看不出来问题,所以用UltraEdit打开两个文件,并用16进制格式显示:

有问题的文件头:


无问题的文件头:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值