最近在修改代码的时候,发现java文件在服务器上不能编译。
因为在本地环境是可以编译的。看代码没啥问题。
最后发现一个叫BOM的东西存在。
BOM是什么东西?
The byte order mark (BOM) is a Unicode character used to signal the endianness (byte order) of a text file or stream. Its code point is U+FEFF
. BOM use is optional, and, if used, should appear at the start of the text stream. Beyond its specific use as a byte-order indicator, the BOM character may also indicate which of the several Unicode representations the text is encoded in。
一般用Eclipse生成的UTF-8文件是不会自动在文件的开头添加BOM字符。但是如果使用一些文本编辑器后可能就会带上BOM字符。
最后用Eclipse重新生成文件后就OK了。
特别是php开发的时候,也经常出现因为BOM而产生乱码!和画面的CSS出现问题。