alibaba / kiwi

🐤 Kiwi-国际化翻译全流程解决方案
2.5k stars 229 forks source link

推荐下java工程的国际化解决kiwi-java #104

Open zt8989 opened 1 year ago

zt8989 commented 1 year ago

kiwi-java是受 Kiwi-国际化全流程解决方案启发的项目

kiwi-java

kiwi-java是一个智能国际化java工程的一个工具,采用groovy编写

智能翻译

kiwi-java使用ast解析完成翻译,可以识别以下内容并跳过翻译

智能转换

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