kiwi
kiwi copied to clipboard
推荐下java工程的国际化解决kiwi-java
kiwi-java是受 Kiwi-国际化全流程解决方案启发的项目
kiwi-java
kiwi-java是一个智能国际化java工程的一个工具,采用groovy编写
智能翻译
kiwi-java使用ast解析完成翻译,可以识别以下内容并跳过翻译
- 注释
- log中的中文
- 配置文件中排除的中文
- 参与业务逻辑的中文比如 “中文”.equsals(“中文”)
- 正则匹配的中文字符(只包含标点)
- 存在于注解中的中文
- 存在于枚举的中文
- 注释中添加了kiwi-disable-method
智能转换
kiwi-java可以将特定语法转换成适应国际化的语法
- 拼接的文案。"用户" + user.name + "不能为空",会做占位符转换, 变成"用户{0}不能为空", 然后替换成对应的code
- 注解中的文案。 @NotNull(message = "用户不能为空"),替换成@NotNull(message = "{user_name_not_empty}")
- MessageFormat.format中的文案。MessageFormat.format("用户名{0}不能为空", user.name)替换成I18nUtils.getMessage("user_name_not_empty", new Object[]{ user.name })。
- 字段中的字符串。private static String abc = "你好"替换成
private String getAbc(){
return I18nUtils.getMessage("hello")
}
地址:https://github.com/zt8989/kiwi-java