使用IDEA创建的springboot项目时,Maven的pom.xml文件中默认会带着相应的打包插件,所以在项目运行测试完毕,确认无误后可以直接执行maven插件的打包命令来进行打包。、
默认会在target目录下生成当前项目的jar包,可以直接使用java -jar 包名
来运行打包后的项目。
使用 mvn package -DskipTests
命令打包,可以跳过测试阶段
设置不同的环境
<!--分别设置开发,生产环境-->
<profiles>
<!-- 开发环境 -->
<profile>
<id>dev</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<environment>dev</environment>
</properties>
</profile>
<!-- 生产环境 -->
<profile>
<id>prod</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<environment>prod</environment>
</properties>
</profile>
</profiles>
先排除所有的配置文件,再添加当前环境需要的配置文件
<resources>
<!--排除配置文件-->
<resource>
<directory>src/main/resources</directory>
<!--先排除所有的配置文件-->
<excludes>
<!--使用通配符,当然可以定义多个exclude标签进行排除-->
<exclude>application*.yml</exclude>
</excludes>
</resource>
<!--根据激活条件引入打包所需的配置和文件-->
<resource>
<directory>src/main/resources</directory>
<!--引入所需环境的配置文件-->
<filtering>true</filtering>
<includes>
<include>application.yml</include>
<!--根据maven选择环境导入配置文件-->
<include>application-${environment}.yml</include>
</includes>
</resource>
</resources>
设置主配置文件,通过maven在构建时导入相应环境的值,Maven会将自身的environment
属性,传递给SpringBoot的配置文件,在构建时替换为对应的值:
spring:
profiles:
active: '@environment@' #注意YAML配置文件需要加单引号,否则会报错
根据我们Maven环境的切换,SpringBoot的配置文件也会进行对应的切换。
最后就可以通过maven的侧边栏直接切换所需要的环境了,注意切换环境后要重新刷新加载一下maven项目,不然会不生效。
引入概念:
在Maven中有依赖传递机制,也就是 A 依赖 B ,B 依赖 C ,则 A 亦依赖 C 。