解决多环境下,maven打包缺少配置文件

问题

在springboot+maven项目中,运用打包命令:mvn clean package -DskipTests,结果生成的war包文件中缺少配置文件。

正常的应该是将yml文件打包进WEB-INF/classes文件里:

解决多环境下,maven打包缺少配置文件

现在的情况:缺少 application.yml 等配置文件

 

原因分析

谷歌搜索“maven打包缺少配置文件”,

<resource> 

    <directory>src/main/resources</directory> 

    <includes> 

        <include>**/*.properties</include> 

        <include>**/*.yml</include> 

        <include>**/*.xml</include> 

        <include>**/*.conf</include> 

    </includes> 

    <filtering>false</filtering> 

</resource> 

解决无果

最终发现,我们项目是多环境(开发+测试+线上),在打包的时候没确定唯一的环境,导致打包没有配置文件

解决

办法1、在idea - maven - Profiles 勾选 唯一的环境

解决多环境下,maven打包缺少配置文件

办法2、pom 文件增加指定环境

<activation>

    <activeByDefault>true</activeByDefault>

</activation>

解决多环境下,maven打包缺少配置文件