Maven过滤器拼凑特殊字符

时间:2010-06-11 02:13:23

标签: java maven-2 localization utf-8 internationalization

我有一个包含以下字符串的资源文件,请注意特殊字符:

Questa funzionalità non è sostenuta: {0} {1}

在Maven完成其进程资源(我需要其他东西)后,我得到了:

Questa funzionalit� non � sostenuta: {0} {1}

请告诉我有一个简单的解决方法吗?

1 个答案:

答案 0 :(得分:7)

包含字符串的文本文件是Java属性文件。默认情况下,Eclipse项目中的大多数文件都从容器(Eclipse)继承默认编码方案 - 在我的情况下是UTF-8。如果您只是手动将文本文件添加到项目中,则不会将其设置为UTF-8 !!

所以我的属性文件实际编码为ISO-8859-1。我通过单击文件右键并选择属性来更改Eclipse中的默认编码。然后我被迫重新输入所有特殊字符。

修复的另一部分是告诉Maven进程资源插件在处理资源时使用UTF-8编码。有关的说明如下:

http://maven.apache.org/plugins/maven-resources-plugin/examples/encoding.html

当然我必须实现UTF-8 ResourceBundle.Control,因为(为了向后兼容),详细信息ResourceBundle仍然是ISO-8859-1。有关该课程的详细信息,请访问:

http://www.mail-archive.com/stripes-users@lists.sourceforge.net/msg03972.html

希望有一天能帮到某人。