我有一個使用maven配置文件設置屬性文件的項目,因此我可以針對不同的環境使用不同的屬性。maven 3.2.3無法正確導入資源
隨着maven版本3.2.1(與Eclipse Luna捆綁在一起的默認版本),這一切都很順利。但是,我下載了最新版本的Maven 3.2.3,當我將它設置爲我的Maven版本時,它全部爆炸了。這些值被讀爲空字符串。
我應該爲此提交一個Maven錯誤嗎?在3.2.2或3.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;
。對我來說,這不僅是通過刪除「目錄」來解決的,而且還提供了一個獨特的「myFile.properties」。它*看起來像所有不是明確包含的內容*是隱式排除的*。 – dognose 2014-10-21 22:41:16
這似乎解決了我的問題。你應該可以讓它成爲答案!看起來像發佈說明中應該包含的信息,我也不確定他們爲什麼會這麼做。 – CorayThan 2014-10-21 22:47:21
添加爲答案 - 隨時接受:) – dognose 2014-10-21 22:49:18