i18n国际化Jar包使用说明

2021-07-09 by uino 25 研发

我们有统一的国际化录入平台,目前支持的语言有JavaScript和Java

如何管理翻译信息

请到i18n国际化录入平台录入国际化信息,目前支持中英文两种语言。如果你初次打开i18n平台会自动跳到Gitlab登陆页,登录后会自动跳转回i18n平台

如何发布

录入结束后,如果想发布到Maven镜像直接在国际化录入平台的右上角点publish按钮,如下图

i18n_publish.png

在弹开的会话框里填入Personal Access Token,然后点击发布即可。如果没有Personal Access Token的需要先到这里Personal Access Token申请一个至少带有api权限的,申请之后请保存下token,否则永远再也不能见到它

目前发布是指同时发布到NPM镜像Maven镜像,发布成功后,如下图

i18n_success.png

注意 jar包发布会有延迟,大概五到十分钟吧,最后有没有发布jar包可以到Maven镜像确认

关于发布的版本号

你不需要在发布时填入版本号,版本号将由系统自动生成,所以在发布成功后会在提示信息里你会看到已发布的版本号,你也可以到Maven镜像地址获得所有可用的历史版本号,用户名密码i18n

pom.xml配置

请在你的pom.xml加入以下信息

...
<dependencies>
  <dependency>
    <groupId>com.uino</groupId>
    <artifactId>i18n</artifactId>
    <version>5.12.1</version>
  </dependency>
</dependencies>
...
<repositories>
    <repository>
        <id>uino-releases</id>
        <name>Releases of Uino</name>
        <url>https://mvn.udolphin.com/repository/i18n-releases/</url>
    </repository>
</repositories>
...

一个示例的完整版 pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>com.uino</groupId>
  <artifactId>example</artifactId>
  <version>1.0-SNAPSHOT</version>

  <dependencies>
    <dependency>
      <groupId>com.uino</groupId>
      <artifactId>i18n</artifactId>
      <version>5.12.1</version>
    </dependency>
  </dependencies>


  <repositories>
      <repository>
          <id>uino-releases</id>
          <name>Releases of Uino</name>
          <url>https://mvn.udolphin.com/repository/i18n-releases/</url>
      </repository>
  </repositories>
</project>

settings.xml 配置

Maven镜像不允许匿名拉取资源,请在~/.m2/settings.xml加入以下配置

<servers>
  <server>
    <id>uino-releases</id>
    <username>i18n</username>
    <password>i18n</password>
  </server>
</servers>

如果你不是Maven项目

如果你的Java项目没有使用Maven做依赖,请自行到Maven镜像地址下载所需版本的jar包手动部署到你的项目即可,用户名密码i18n

使用

引入i18n的jar包

import com.uino.I18n;

获取翻译

I18n.getDefaultLanguage(); // return: Language.zh
I18n.get("COMMON_YES"); // return: 是
I18n.get("COMMON_YES", I18n.language.en); // return: Yes

I18n.setDefaultLanguage(I18n.language.en);
I18n.get("COMMON_YES"); // return: Yes
I18n.get("COMMON_YES", I18n.language.zh); // return: 是

API

  • static Language getDefaultLanguage(): 获取默认语言,默认是中文 Language.zh
  • static void setDefaultLanguage(Language language): 设置默认语言
  • static String[] getKeys(): 获取所有的Key
  • static String[] getParams(String key, Language language) throws Exception: 获取原文的参数,自动去重
  • static String getVersion(): 获取版本号
  • static String get(String key) throws Exception: 通过Key获取翻译,语言默认
  • static String get(String key, Language language) throws Exception: 通过Key获取指定语言的翻译
  • static String get(String key, HashMap<String, String> params) throws Exception: 通过Key获取获取带参数的翻译,语言默认
  • static String get(String key, HashMap<String, String> params, Language language) throws Exception: 通过Key获取获取指定语言带参数的翻译