Gwt i18n > 生成属性文件

4

我正在使用GWT,希望将其国际化,因此使用了GWT常量方法。

我有一个带默认值的Java文件,现在需要制作属性文件。

在记忆中,有一件特殊的事情要做(或自动完成),以生成一种模板,其中所有常量都用空标签生成其他语言的标签。

这是我做梦了吗?

(使用Eclipse Indigo开发带有GWT但不带GAE的Web应用程序)

[编辑:]

这不是梦,它是i18ncreator:

http://code.google.com/intl/fr-FR/webtoolkit/doc/latest/RefCommandLineTools.html#i18nCreator

但是我不能让它在Windows上运行 :-(

[再次编辑]

由于这个问题:http://code.google.com/p/google-web-toolkit/issues/detail?id=5113,建议解决方案是使用GWT 1.7中的i18ncreator (!)

4个回答

2
我曾经遇到同样的问题。我四处寻找答案,但无论是在文档中还是在stackoverflow上都找不到答案。
所以我在GWT gitter频道上询问,并被告知使用编译器参数 -extra <destination-folder-name> 从接口文件生成.properties文件。
在eclipse中的步骤:
  1. 选择要编译的项目
  2. [右键单击] -> Google -> GWT Compile
  3. 在打开的窗口中,打开高级选项
  4. 添加以下附加编译器参数-extra <destination-folder-name>
  5. 编译

setting compiler option in eclipse to generate the extra files

这应该会在/destination-folder-name中生成*.properties文件。
注意:这仅生成.properties文件。它不会实际编译带有所有语言环境的应用程序进行部署。
6. 将MyInterfaceExtension_*.properties移动到MyInterfaceExtension.java文件旁边。 7. 为每个区域设置副本,例如MyInterfaceExtension_fr_CA.propertiesMyInterfaceExtension_fr_FR.properties等。 8. 进行翻译。 9. 然后再次运行编译过程不使用-extra <destination-folder-name>选项。因为它不再需要了。
这将与您启用的所有语言环境一起编译。现在,可以像通常一样部署应用程序。
快速提示: 第一次编译以生成.properties文件时,我在模块定义文件中注释了区域设置,以便编译器不会为每个浏览器和每个区域设置而反复编译。
supported_browser_count x enabled_locale_count = 5个浏览器 x 3个区域设置 = 15个编译排列,这将增加您的编译时间。

因为我只需要那一个*_en.properties文件。

对于第二次编译,在复制和翻译每个区域设置的属性文件后,您必须启用所有要支持的区域设置并进行编译。

鸣谢:

  1. github @niloc132:Colin Alworth
  2. github @ibaca:Ignacio Baca Moreno-Torres

感谢他们帮助我解决这个问题。


它能在GWT 2.9.0上工作吗?我正在尝试生成属性文件,但没有成功。 - Kasas

2

1

0
我还没有听说过Eclipse有这个功能,但IntelliJ IDEA有这个功能,你只需要创建常量接口类和属性文件。如果您在类文件中添加方法,它会警告您添加属性或反之亦然。希望对您有所帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接