用于检查Java资源包的工具(i18n)

时间:2010-06-17 20:31:58

标签: java resources internationalization resourcebundle

我正在寻找一个工具,ant-task,IDE插件......这对I18N有帮助 使用标准message-properties资源包的Java应用程序。都 欢迎开源和商业解决方案。

具体来说,我正在寻找以下任务的支持:

1)从Java代码,JSP和其他工件中提取使用过的密钥。自定制 框架涉及提取应该允许定制。

将源工件映射到某个消息包。还有自定义规则。

报告不在捆绑中的已使用密钥。报告包中的密钥 但是没有映射到此捆绑包的源工件。

2)检查每个包的属性文件,并报告缺少的键定义和默认翻译(使用英文文本)。

3)将当前的SVN / CVS / GIT /任何版本与旧版本和报告进行比较 一个翻译(或者可能只是默认翻译)改变但不改变的情况 其他翻译。

http://rscbundlecheck.sourceforge.net/涵盖2)很大一部分。但是我没有找到1)和3)的东西。有什么指针吗?

3 个答案:

答案 0 :(得分:1)

  

报告不在捆绑中的已使用密钥。报告包中的键,但不包含映射到此包的源工件。

你知道,这个是非常不典型的,我怀疑任何框架都会包含它,因为它需要分析代码并确定,哪些调用是资源包,可以是作为参数传递的动态字符串等。

通常使用专用编辑器编辑包。 Eclipse的ResourceBundle插件,您可以同时编辑原始和翻译,并且您会看到所有翻译中都没有的每个键的警告。

答案 1 :(得分:1)

  

1)从Java代码,JSP和其他工件中提取使用过的密钥。   由于涉及自定义框架,因此提取应该允许   定制

     

将源工件映射到某个消息包。还有   自定义规则。

我也遇到了同样的问题并开始开发新的解决方案。我今天只在我的博客中posted。它只是使用Java注释处理器工具来创建(或只是更新)属性文件和键。它也是可扩展的,如帖子中所述。它可以在我的GitHub项目中找到(你必须从我的博客中找到链接,因为我不能发布超过2个链接)。

随意使用它并询问您需要的任何内容。


  

2)检查每个包的属性文件并报告丢失的密钥   定义和默认翻译(使用英文文本)。

我还发现this solution(尚未尝试过),听起来很有希望!


希望它有所帮助!

答案 2 :(得分:0)

我为此目的实现了Message Compiler,它为一个源文件中的键创建了资源包文件和常量定义Java enum。因此常量可以在Java source code中使用,这是一种更安全的方式。消息编译器不仅可以用于Java。它还为Objective-C or Swift创建资源文件和常量,并可以扩展到其他编程环境。