Ant编译utf-8非法字符:/65279 解决方法
2024-10-18 20:20:46
使用ant编译java文件时报非法字符(不可见的)问题
最简单的方法:
一般来说错误信息会提示非法字符的位置,可以在eclipse里面切换java文件的编码方式,比如:ISO-8859-1,等编码,可以观察到指定位置的非法字符。删除非法字符即可编译通过。
对于较少文件适用
-------------------------------------------------
另外补充:
一般用UE或记事本编辑过的UTF-8的文件头会加入BOM标识,该标识由3个char组成。在UTF-8的标准里该BOM标识是可有可无的,Sun 的javac 在编译带有BOM的UTF-8的格式的文件时会出现“非法字符:/65279”的错误,但是用Eclipse进行编译却没有问题,原因在于Eclipse使用的是自己的JDT,而非javac,关于JDT的描述可以到eclipse的官网上去查看。
下载editplus,打开你的java源文件(可以打开多个文件),选择“文档”-“文件编码”-“批量更改文件编码…”选择所有你需要修改的编码的java源文件,选择字符集“UTF-8″记得是UTF-8,而非“utf-8 bom”。点击批量保存按钮。再运行你的ant脚本,此时编译就不会报出“非法字符:/65279”这个错误了。
出现这种情况时,网上提供了两种解决方法:
a) 利用UE、Editplus等文本编辑器重新保存文件为不带BOM的UTF-8格式
b) 可使用eclipse自带的编译器进行编译
<!--在ant中添加property,使用eclipse jdt compiler编译-->
<property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter" />
相关jar包,在eclipse安装文件plugins目录下:org.eclipse.jdt.core_xxx.jar,xxx为版本号
最新文章
- xml类型使用注意事项
- Deepin 15.3 编译同步SudaMod 2.0
- New library for Matlab - test
- 免费的HTML5连载来了《HTML5网页开发实例详解》连载(二)
- 设置windows网络连接别名和linux网络连接别名
- UITableview 多行删除
- 奶牛通讯 usaco 网络流
- LaTeX 标题中使用 \bm 命令与 hyperref 的冲突
- C# mvc 验证码2
- cer, pfx 创建,并且读取公钥/密钥,加解密 (C#程序实现)
- windows同一台电脑设置多个公钥与不同github帐号交互
- [LeetCode]题解(python):072-Edit Distance
- Redis学习——redis.conf 配置文件介绍
- RobotFramework下的http接口自动化Get Response Status 关键字的使用
- 【CJOJ2316】【模板】可持久化线段树
- 将docker镜像上传到docker hub
- plugin-barcodescanner 报错
- Log4J Appender - 将Log4J的日志内容发送到agent的source
- [leetcode]Convert Sorted List to Binary Search Tree @ Python
- java基础小测试