如何为不同的环境构建设置我的maven pom?

时间:2014-03-06 16:42:37

标签: maven maven-3

我有3个环境:

  1. local(dev)
  2. 分期
  3. 生产
  4. 每个环境使用不同的属性文件(例如,指定jdbc属性)。目前,我的maven项目构建了一个war文件。有人可以给我一些关于如何修改pom.xml文件的指导,以便我可以指定不同的构建吗?

    例如,如果我需要为stage构建war文件,我需要对pom.xml文件做些什么来实现这一点,以便使用staging属性文件(包含在战争中)?

    让我对自己的构建更加清晰。我正在使用spring mvc,所以我可以切换存在哪个环境(例如属性文件)。这样做的方法是在web.xml中设置context参数,如下所示。

    <context-param>
     <param-name>spring.profiles.active</param-name>
     <param-value>dev</param-value>
    </context-param>
    

    所以,基本上,如果我使用maven配置文件,我该如何换出这个参数值?

1 个答案:

答案 0 :(得分:1)

您必须在pom.xml中定义不同的环境配置文件

<profiles>
  <profile>
    <activation>
      <property>
        <name>environment</name>
        <value>test</value>
      </property>
    </activation>
    ...
  </profile>
</profiles>

或者给它一个像这样的特定ID /名称

<profiles>
  <profile>
    <id>profile-1</id>
    ...
  </profile>
</profiles>

并使用mvn

运行mvn groupId:artifactId:goal -Pprofile-1

您可以找到更多信息here