如果不做资源过虑,在打包时会带上全部的配置文件,但是为了考虑安全性问题,我们只保留对应环境下的配置文件。
实现根据不同的环境打包不同的配置文件,配置如下:
<build>
<!-- 资源配置 -->
<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-${spring.profiles.active}.yml</include>
</includes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot-dependencies.version}</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>