本文适用于开发环境下需要打包项目至生产环境,避免开发环境的配置文件泄露。
作用:1. 手动调节运行时的不同环境 2. 打包时可以不会有其它环境的文件 注:每次换环境前(打包前)记得手动clean清楚,因为idea不会在换环境后自动清除另一个环境的文件
在pom文件中加
application.yaml
、application-dev.yaml
、application-prod.yaml
//application.yaml
//方法一:弊端(打包时会把dev 和 prod环境的配置文件都会打包),无法真正做到多环境开发
spring:
profiles:
active: dev //这里是写配置文件命名-后的单词
//方法二:通过maven来告诉springboot应该打包哪个环境的文件(优点:不会包含其他环境的配置文件)
spring:
profiles:
active: '@environment@' #这里的单词要手动打,等有提示才行,不然会失败。注意YAML配置文件需要加单引号,否则会报错。
//application-dev.yaml
server:
port: 8080
//application-prod.yaml
server:
port: 80
如果有设置日志打印,想要不同环境日志打印不同需要去日志打印的配置文件改这些:把上面上部分改成下部分
<root level="INFO">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</root>
------------------------------------------------------------------
<!--dev环境下的日志输出方式-->
<springProfile name="dev">
<root level="INFO">
<appender-ref ref="CONSOLE"/>
<appender-ref ref="FILE"/>
</root>
</springProfile>
<!--prod环境下的日志输出方式-->
<springProfile name="prod">
<root level="INFO">
<appender-ref ref="FILE"/>
</root>
</springProfile>