10

我正在寻找一个工具、ant-task、IDE 插件……它有助于使用标准消息属性资源包的 Java 应用程序的 I18N。欢迎开源和商业解决方案。

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

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

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

报告未在捆绑包中使用的密钥。报告包中的键,但没有映射到此包的源工件中的键。

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

3) 将当前的 SVN/CVS/GIT/whatever 版本与旧版本进行比较,并报告其中一个翻译(或可能只有默认翻译)更改但其他翻译没有更改的情况。

http://rscbundlecheck.sourceforge.net/涵盖了 2) 的大部分内容。但是我没有找到1)和3)的东西。任何指针?

4

3 回答 3

1

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

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

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

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


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

我也找到了这个解决方案(还没有尝试过),听起来很有希望!


希望能帮助到你!

于 2012-07-04T03:06:53.363 回答
1

报告未在捆绑包中使用的密钥。报告包中的键,但没有映射到此包的源工件中的键。

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

通常使用专门的编辑器、用于 Eclipse 的 fg ResourceBundle 插件来编辑包,您可以在其中同时编辑原始和翻译,并且您会看到所有翻译中不存在的每个键的警告。

于 2011-08-29T10:59:58.347 回答
0

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

于 2016-01-19T15:53:30.963 回答