我将如何将spring localization messages.properties捆绑到另一个仓库中,然后通过maven依赖来使用?

问题描述 投票:0回答:1

我已经尝试在我的配置中显式创建Spring的MessageSource bean,希望我可以指定另一个仓库的资源包的路径,以便将所有本地化都放在一个位置,但是我不确定MessageSource是什么。 bean将用作基本名。这些资源存在于我通过maven依赖的单独的git repo中。


  @Bean
  public MessageSource messageSource() {
    ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();
    messageSource.setBasename("classpath:/messages");
    messageSource.setDefaultEncoding("UTF-8");
    messageSource.setUseCodeAsDefaultMessage(true);
    return messageSource;
  }

}

默认值为“ classpath:/ messages”,但是在我的情况下,此Bean不驻留在资源束所执行的回购中...感谢您的任何帮助!

spring maven localization internationalization resources
1个回答
0
投票
对我来说,解决方案最终是将资源包移到新的存储库中,然后将其添加为maven依赖项。为了使它起作用,我需要从先前位置的资源中删除捆绑包,以便本地创建的bean将不再阻止新bean的使用。

从springs文档:

只要在两个不同的spring配置文件上定义两个具有相同bean的id的bean定义,它就有效。而您要将一个配置文件导入到另一个(合并)中,无论您如何导入(合并)。后一个或最后一个bean定义将被第一个(s)覆盖。
© www.soinside.com 2019 - 2024. All rights reserved.