每个子项目配置

 

maven&springboot配置不同profile环境_maven


application-dev.ym
application-test.yml
application-uat.yml
application-prod.yml


 在每个子项目的pom.xml这样的配置,

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>copy-dependencies</id>
<phase>package</phase>
<!--<goals>-->
<!--<goal>copy-dependencies</goal>-->
<!--</goals>-->
<configuration>
<outputDirectory>${project.build.directory}/lib</outputDirectory>
<excludeTransitive>false</excludeTransitive>
<stripVersion>false</stripVersion>
<includeScope>runtime</includeScope>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<!--<resource>-->
<!--<directory>src/resources/lib</directory>-->
<!--<targetPath>BOOT-INF/lib/</targetPath>-->
<!--<includes>-->
<!--<include>**/*.jar</include>-->
<!--</includes>-->
<!--</resource>-->
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
<excludes>
<exclude>application-dev.yml</exclude>
<exclude>application-test.yml</exclude>
<exclude>application-uat.yml</exclude>
<exclude>application-prod.yml</exclude>
</excludes>
</resource>
<resource>
<filtering>true</filtering>
<directory>src/main/resources</directory>
<includes>
<include>application-${profileActive}.yml</include>
<include>application.yml</include>
</includes>
</resource>
</resources>
</build>

 

在父项目的pom.xml进行这个么配置;

maven&springboot配置不同profile环境_ci_02

<profiles>
<!--开发环境-->
<profile>
<id>dev</id>
<properties>
<profileActive>dev</profileActive>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<!--测试环境-->
<profile>
<id>test</id>
<properties>
<profileActive>test</profileActive>
</properties>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
</profile>
<!--预发布环境-->
<profile>
<id>uat</id>
<properties>
<profileActive>uat</profileActive>
</properties>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
</profile>
<!--生产环境-->
<profile>
<id>prod</id>
<properties>
<profileActive>prod</profileActive>
</properties>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
</profile>
</profiles>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
</resource>
<resource>
<filtering>false</filtering>
<directory>src/main/resources/application-${profileActive}.yml</directory>
</resource>
</resources>
</build>

参考项目 ​​spring-boot-plus​