@Jarrod Roberson,此问题中的Spring是关于1.2版的,所以其他解决方案是不可能的。该解决方案在applicationContext.xml中使用了简单的Maven配置和Spring的PropertyPlaceholderConfigurer。Eclipse Mars。 Java Spring - 用于构建环境的Maven Profile开关
我已经升级了一个从Windows XP,Eclipse 3.2到OS X,Eclipse Mars的Web应用程序。
我从火星上的Dynamic Web Project开始并完成升级。我已经将它转换为Maven项目。我希望使用Maven Profiles在Dev和Test环境之间进行切换。
环境仅在config.properties中有所不同,后者被拉入applicationContext.xml。对于测试我只打算出口到与'正确'config.properties战争。
但我不能得到config.properties文件从配置文件中相关的版本切换配置文件时进行更新。
我在pom.xml中: -
<profiles>
<profile><!-- The configuration of the development profile -->
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<build.profile.id>dev</build.profile.id>
</properties>
</profile>
<profile><!-- The configuration of the test profile -->
<id>test</id>
<properties>
<build.profile.id>test</build.profile.id>
</properties>
</profile>
</profiles>
<build>
<sourceDirectory>src</sourceDirectory>
<filters>
<filter>profiles/${build.profile.id}/config.properties</filter>
</filters>
<resources>
<resource>
<filtering>true</filtering>
<directory>src</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.3</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
</plugins>
</build>
我觉得我很接近,但缺少的东西。我尝试添加maven-resources-plugin,但没有任何区别。
任何帮助将不胜感激。
你介意用你的项目结构更新你的文章? – aribeiro