如何在java包(spring boot)中加载“messages.properties”?

92dk7w1h  于 2021-07-08  发布在  Java
关注(0)|答案(1)|浏览(410)

我想加载多个 messages.properties java包中的文件。
我的项目设置如下:

以及 AppConfig.java 是:

@Configuration
public class AppConfig extends AcceptHeaderLocaleResolver implements WebMvcConfigurer {
    ...
    @Bean
    public ResourceBundleMessageSource messageSource() {
        final ResourceBundleMessageSource messageSource = new ResourceBundleMessageSource();

        messageSource.setBasenames(
            "file:./project/foo/messages.properties", // Not working
            "file:./project/bar/messages.properties"
        );

        messageSource.setDefaultEncoding("UTF-8");

        return messageSource;
    }
}

但上述设置不起作用。如何加载多个 messages.properties 从java源代码包?有可能吗?
我只是不想用这个文件夹 src/main/resources -我想把文件 messages.properties 在每个包文件夹中。
另外,我想将文件重命名为 ProjectFooMessage.properties 匹配文件名(自定义名称)。请开导我!
注意:我使用的是SpringBoot2.1.14

i2byvkas

i2byvkas1#

我终于明白了。我需要换衣服 pom.xml ```
// pom.xml
...


src/main/resources


src/main/java

**/*.properties



...

关键是 `<include>**/*.properties</include>` -所以我可以包括所有 `*.properties` java源文件夹中的文件。
然后,我可以使用以下代码访问该文件:

...
messageSource.setBasename("classpath:project/foo/messages");
...

呜呼!

相关问题