我正在寻找一个工具,ant-task,IDE插件......这对I18N有帮助 使用标准message-properties资源包的Java应用程序。都 欢迎开源和商业解决方案。
具体来说,我正在寻找以下任务的支持:
1)从Java代码,JSP和其他工件中提取使用过的密钥。自定制 框架涉及提取应该允许定制。
将源工件映射到某个消息包。还有自定义规则。
报告不在捆绑中的已使用密钥。报告包中的密钥 但是没有映射到此捆绑包的源工件。
2)检查每个包的属性文件,并报告缺少的键定义和默认翻译(使用英文文本)。
3)将当前的SVN / CVS / GIT /任何版本与旧版本和报告进行比较 一个翻译(或者可能只是默认翻译)改变但不改变的情况 其他翻译。
http://rscbundlecheck.sourceforge.net/涵盖2)很大一部分。但是我没有找到1)和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
创建资源文件和常量,并可以扩展到其他编程环境。