如何在 tomcat7-maven-plugin 上设置 spring 配置文件?

How can I set spring profile on tomcat7-maven-plugin?

如何设置活动 spring 配置文件或 tomcat maven 插件?我想在运行时从环境中获取活动配置文件,但我总是得到空数组。

我试图在 pom.xml 的插件配置中添加此 systemProperties:

<JAVA_OPTS>-Dspring.profiles.active=local</JAVA_OPTS>

<name>spring.profiles.active</name>
<value>locale</value>

我尝试在 context.xml 中添加:

<environment name="spring.profiles.active" value="local" type="java.lang.String" override="false"/>

但仍然没有活动配置文件...

我的环境:Java6,tomcat7-maven-plugin 版本 2.2,Netbeans 8.0.2,Spring3.1.1.RELEASE.

我的 pom.xml tomcat 插件看起来是这样的:

<plugin>
    <groupId>org.apache.tomcat.maven</groupId>
    <artifactId>tomcat7-maven-plugin</artifactId>
    <version>2.2</version>

    <configuration>
        <!-- http port -->
        <port>8084</port>
        <contextFile>${basedir}/src/main/resources-local/context.xml</contextFile>
        <systemProperties>
            <JAVA_OPTS>-Dspring.profiles.active=local</JAVA_OPTS>
        </systemProperties>
    </configuration>
    <executions>
        <execution>
            <id>tomcat-run</id>
            <goals>
                <goal>run-war</goal>
            </goals>
            <phase>package</phase>
        </execution>
    </executions>
<dependencies>

Tomcat 7 Documentation 显示了系统属性的不同语法,如下所示。所以尝试这样做:

<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
  <systemProperties>
    <example.value.1>alpha</example.value.1>
    <example.value.2>beta</example.value.2>
  </systemProperties>
</configuration>
</plugin>