项目完成后部署工作,每种环境都有各自的配置参数,比如:数据库连接、远程调用的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