springboot+maven多环境配置

平时开发中最常见的是dev、test、prod三种环境,经常会在一个项目中,根据不同的环境去不同的配置。下面就在springboot+maven的开发环境下配置这三种环境。

1.在pom.xml文件中配置出这三个profile。

 1  <profiles>
 2         <profile>
 3             <id>dev</id>
 4             <properties>
 5                 <profiles.active>dev</profiles.active>
 6             </properties>
 7             <activation>
 8                 <activeByDefault>true</activeByDefault>
 9             </activation>
10         </profile>
11 
12         <profile>
13             <id>test</id>
14             <properties>
15                 <profiles.active>test</profiles.active>
16             </properties>
17         </profile>
18 
19         <profile>
20             <id>prod</id>
21             <properties>
22                 <profiles.active>prod</profiles.active>
23             </properties>
24         </profile>
25     </profiles>

其中<id>的是会在右侧maven面板中显示的值,<profiles.active>标签是自定义的,可以更换成其他标签。

 

2.在项目的resources目录下创建出对应的目录和文件,文件夹的目录和<profiles.active>的值保持一致。

springboot+maven多环境配置

 

 

 

3.在pom.xml文件中配置打包是需要打进jar包的配置文件

 1 <build>
 2         <finalName>test-api</finalName>
 3         <plugins>
 4             <plugin>
 5                 <groupId>org.springframework.boot</groupId>
 6                 <artifactId>spring-boot-maven-plugin</artifactId>
 7                 <executions>
 8                     <execution>
 9                         <goals>
10                             <goal>repackage</goal>
11                         </goals>
12                     </execution>
13                 </executions>
14                 <configuration>
15                     <executable>true</executable>
16                 </configuration>
17             </plugin>
18         </plugins>
19         <resources>
20             <resource>
21                 <directory>src/main/resources/</directory>
22                 <!--打包时先排除掉三个文件夹-->
23                 <excludes>
24                     <exclude>dev/*</exclude>
25                     <exclude>prod/*</exclude>
26                     <exclude>test/*</exclude>
27                 </excludes>
28             </resource>
29             <resource>
30                 <!--这里是关键! 根据不同的环境,把对应文件夹里的配置文件打包-->
31                 <directory>src/main/resources/${profiles.active}</directory>
32             </resource>
33         </resources>
34     </build>

注:<directory> 标签中的 "profiles.active" 和1中的名称保持一致。

只要保证两边保持一致即可。

 

4.刷新maven,即可看到右侧Maven面板中profiles文件夹下的这三个环境(名称是1对应的id)了。

 

上一篇:Springboot项目Maven打包报错:Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:r


下一篇:maven-springboot读取pom