最近使用 IDEA 打包 maven 项目时,碰到客户反映说日志级别为 debug 导致磁盘爆满的问题,一直没留意,今天专门看了下 war 包中类路径下的配置,真的是本机测试环境中的配置文件。
这就很奇怪了,每次打包的时候,都有修改 pom.xml 中的 activeByDefault 为目标 profile 的呀?反复测试了几下,发现了问题根源是 resource 目录下有几个默认配置文件,打包的时候最终是这些配置文件到了目标 war 包中了。
有默认配置文件时
,即使序号 3 配置了 true ,但序号 4 不勾选 pom.xml 对应的 profile ,会直接将默认配置文件打包到类路径下。
删掉默认配置文件
,即使序号 3 配置了 true ,但序号 4 不勾选
pom.xml 对应的 profile ,不会有配置文件打包到类路径下。
删掉默认配置文件
,即使序号 3 配置了 true ,但序号 4 勾选
一个非 3 配置的 profile 时,会将勾选 profile 下的配置文件打包到类路径下。
结论就是,打包时配置文件是由勾选的 profile 为主的,不勾选,就没有: