maven构建不同环境的部署包

     项目完成后部署工作,每种环境都有各自的配置参数,比如:数据库连接、远程调用的ws地址等等。如果每个环境build前手动修改这些参数,显然太不靠谱。

    但是把这些内容全部都写在pom.xml里面也不是很合适,还是分拆出properties文件来存储,那么pom里面如下配置就可以做到同样的效果。

  <profiles>
        <profile>
            <id>production</id>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-antrun-plugin</artifactId>
                        <executions>
                            <execution>
                                <phase>compile</phase>
                                <goals>
                                    <goal>run</goal>
                                </goals>
                                <configuration>
                                    <tasks>
                                        <delete file="${project.build.outputDirectory}/reb-api.properties" />
                                        <copy file="src/main/resources/reb-api.production.properties" tofile="${project.build.outputDirectory}/reb-api.properties" />
                                    </tasks>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
        </profile>

打包的时候用  mvn package -Pproduction

猜你喜欢

转载自5keit.iteye.com/blog/2319964