我正在为一个项目做一个 maven-site,我想将它国际化。好消息是由 Maven 站点插件和项目信息报告插件完成的站点生成已经完全国际化。Maven 站点插件使用 pom 中的 project.description 标记来填充索引页面,我想知道是否有一种“好”的方式来国际化这个标记。
谢谢 !
我正在为一个项目做一个 maven-site,我想将它国际化。好消息是由 Maven 站点插件和项目信息报告插件完成的站点生成已经完全国际化。Maven 站点插件使用 pom 中的 project.description 标记来填充索引页面,我想知道是否有一种“好”的方式来国际化这个标记。
谢谢 !
我不确定我的解决方案是否特别好,但至少它对我有用;-) AFAIK 你不能直接国际化 Maven 项目的元数据,但你可以使用 Maven 的配置文件工具来模拟它。像这样继续:创建一个 Maven 属性,例如i18n.project.description
为您的项目描述使用默认翻译。将此属性用于project.description
. 然后为您想要支持的每种语言添加一个配置文件(例如带有 idSWE
和的配置文件GER
)。在每个配置文件中,使用相应的翻译覆盖描述属性。然后,您可以使用这些不同的配置文件来构建国际化网站,如下所示:
$mvn -P GER site
# 构建德语站点
$mvn -P SWE site
# 构建瑞典站点
如果有的话,您可以将这些配置文件与现有配置文件混合使用,例如
$mvn -P GER,development site
总之,您的 pom.xml 的相关部分可以定义如下:
<project>
<description>${i18n.project.description}</description>
<properties>
<i18n.project.description>Some project description</i18n.project.description>
</properties>
...
<profiles>
<profile>
<id>SWE</id>
<properties>
<i18n.project.description>En projektbeskrivning</i18n.project.description>
</properties>
</profile>
<profile>
<id>GER</id>
<properties>
<i18n.project.description>Irgend eine Projektbeschreibung</i18n.project.description>
</properties>
</profile>
</profiles>
</project>