maven 3.2.3无法正确导入资源

时间:2014-10-21 22:34:13

标签: java spring maven

我有一个使用maven配置文件设置属性文件的项目,因此我可以为不同的环境使用不同的属性。

使用maven版本3.2.1(Eclipse Luna捆绑的默认版本),这一切都在游泳。但是,我下载了最新版本的maven,3.2.3,当我将其设置为我的maven版本时,一切都爆炸了。这些值被读作空字符串。

我应该为此提交Maven错误吗?我无法在3.2.23.2.3的发布说明中找到任何看起来应该导致这种情况的内容。

以下是个人资料:

    <profile>
        <id>dev</id>
        <build>
            <resources>
                <resource>
                    <directory>src/main/config/local</directory>
                </resource>
            </resources>
        </build>
    </profile>

然后我使用Spring将文件添加到类路径中:

@Bean
public static PropertySourcesPlaceholderConfigurer propertyPlaceHolderConfigurer() {

    PropertySourcesPlaceholderConfigurer props = new PropertySourcesPlaceholderConfigurer();
    props.setLocations(new Resource[] { new ClassPathResource("service.properties") });
    return props;
}

并最终导入其价值观:

@Value(value = "${db.username}")
private String DB_USERNAME;

1 个答案:

答案 0 :(得分:1)

升级时我遇到了一些类似的问题。对我而言,它不仅解析了目录,而且还提供了一个明确的

<includes>
   <include>myFile.properties</include>
</includes>

似乎所有未明确包含的内容被隐式排除

我不知道这是一个错误还是一个功能:)