1. 程式人生 > >java中,部署出現非法字元:\65279

java中,部署出現非法字元:\65279

今天同事修改程式碼,圖方便用記事本修改了一行程式碼提交,部署到伺服器出現了問題。

般用UE或記事本編輯過的UTF-8的檔案頭會加入BOM標識,該標識由3個char組成。在UTF-8的標準裡該BOM標識是可有可無的,Sun 的javac 在編譯帶有BOM的UTF-8的格式的檔案時會出現“非法字元:\65279”的錯誤,但是用Eclipse進行編譯卻沒有問題,原因在於Eclipse使用的是自己的JDT,而非javac,關於JDT的描述可以到eclipse的官網上去檢視。


出現這種情況時,有兩種解決方法: 
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為版本號