多模块项目中的Spring Boot i18n

时间:2018-12-26 12:59:12

标签: spring spring-boot internationalization application.properties

我有这个多模块项目:

Parent Pom
|
|----Main module (@SpringBootApplcation and application.properties)
|
|----Module I
|
|----Module II
|
|----Module III

主模块依赖于其他模块,并且包含messages.properties下的messages_fr.propertiesresources/messages/以及我在其中定义application.properties bean {{1}的MessageResource }。 现在,我想将spring.messages.basename=messages/messages文件放在每个模块中。例如,对于模块I,在messages.properties下与模块II相同。 我的问题是,如何在src/main/resources/messages/messages.properties中定义的MessageResource bean中添加模块的消息? 我尝试了以下几种声明:

application.propertiesspring.messages.basename=messages/messages,classpath:/com/company/moduleI/resources/messages/messages,但均无效。 有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

我终于找到了一个更好的解决方案,使用ResourceBundleMessageSource#addBasenames(...)添加所有模块的消息。