如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文输出,则最好使 Java文件使用UTF-8编码。然而,Eclipse工作空间(workspace)的缺省字符编码是操作系统缺省的编码。
在使用Eclipse时,若要使新建的工程全局都直接使用UTF-8编码而不需要一个个文件去设置,则可以按以下步骤去设置:
1、打开 “窗口->首选项->常规->工作空间”,将“文本文件编码”设置为UTF-8。那么,以后新建立工程其属性对话框中的Text file encoding即为UTF-8。
2、打开 “窗口->首选项->常规->内容类型”,将每一个子项的“缺省编码”都设置为UTF-8并逐项点击“更新”按钮,都设置完成后点击“确定”按钮。( 其他java应用开发相关的文件如:properties、XML等已经由Eclipse缺省指定,分别为ISO8859-1,UTF-8,如开发中确需改变编码格式则可以在此指定。)
经过上述步骤,新建的java文件即为UTF-8编码,Eclipse编译、运行、调试都没问题,但是做RCP应用的Product输出时、或者插件输出时,则总是出错,要么不能编译通过(输出时要重新compile)、要么输出的插件运行时中文显示乱码。此时需要再RCP应用、或插件Plugin工程的build.properties中增加一行,javacDefaultEncoding.. = UTF-8,让输出时编译知道java源文件时UTF-8编码。这个设置需要保证所有的java源文件时UTF-8编码格式,如果不全是,可以参考 Eclipse帮助(Plug-in Development Environment Guide > Reference > Feature and Plug-in Build configuration)。建议全部java源文件是UTF-8编码。
如果插件开发、RCP应用开发原来基于其他编码,如GB18030,想转换为UTF-8,则:首先做以上工作;然后通过查找编码转换工具,如基于 iconv的批量转换工具,将原编码转换。