SpringBoot下的maven多环境配置
程序员文章站
2024-02-07 22:53:46
...
日常开发中,我们需要不同的环境,开发环境、测试环境、正式环境,不同的环境需要不同的配置文件。
SpringBoot中支持xml和yml,因为个人使用xml较多,所以本次使用xml的配置。
1、首先我们在resources新建maven_build文件夹,里面放置我们需要使用的三个环境的配置文件分别为开发环境-dev.properties、测试环境-test.properties、开发环境-pro.properties。
(1)dev.properties
mvn.common.env=dev
mvn.common.code=devCode
(2)test.properties
mvn.common.env=test
mvn.common.code=testCode
(3)pro.properties
mvn.common.env=pro
mvn.common.code=proCode
2、接下来修改pom.xml文件
<profiles>
<profile>
<id>dev</id>
<properties>
<env>dev.properties</env>
</properties>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties>
<env>test.properties</env>
</properties>
</profile>
<profile>
<id>prod</id>
<properties>
<env>pro.properties</env>
</properties>
</profile>
</profiles>
<build>
<filters>
<filter>src/main/resources/maven_build/${env}</filter>
</filters>
<finalName>${project.artifactId}</finalName>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<!-- 排除maven_build下面的文件夹 以免重复引用-->
<excludes>
<exclude>maven_build/**/*</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<classifier>exec</classifier>
</configuration>
</plugin>
</plugins>
</build>
本人使用idea,此时可以选择环境版本
3、在application.properties我们增加
envCode=${mvn.common.code}
这个时候启动代码并且使用到envCode参数的时候会报错
原因是点击pom文件查看SpringBoot是使用@
解决方法有两种
1、envCode=${mvn.common.code}改为aaa@qq.com@
2、在pom文件新增
<properties>
<resource.delimiter>${}</resource.delimiter>
</properties>
4、验证是否有效
我将环境切换为正式环境,在控制层获取到envCode并且传到页面上
5、修改配置文件的时候最好先clean后再install
上一篇: SQL server 2008数据库的备份与还原(转)
下一篇: 设计模式——命令模式
推荐阅读