当前位置:   article > 正文

idea中Spring Boot项目Profile不生效的问题_idea profiles不起作用

idea profiles不起作用

idea中Spring Boot项目Profile不生效的问题



开发Spring Boot项目,会根据不同环境的配置设定不同的Profile,每个Profile下对应一些资源文件。比如数据库的配置,在开发环境下有一套,测试环境有一套,生产环境也有一套。而使用Intellij Idea开发时,Maven选项卡中可以选择要使用哪一个Profile,如图所示。

在这里插入图片描述

需要使用哪一个环境,勾选哪一个profile,然后点击运行就好了。但是有时候会遇到一个诡异的问题,那就是勾选的dev环境,最终实际使用的却是prod配置。其实可能是因为上一次打包是通过命令行操作的,比如mvn clean package -P prod,这样会有什么结果呢,就是这个项目已经编译完成了。通过笔者观察发现,如果先执行mvn clean,然后点击idea的运行或者debug按钮运行,那么对应项目target路径下会多出一个classes文件夹,所以猜测idea是通过classes文件夹是否存在来决定是否需要编译的。如果存在,那么直接用文件夹里面的资源文件;如果不存在,那么使用idea的Profile设置找到对应的资源文件进行编译。而如果已经命令行打包过了,那么maven已经执行到了对应的阶段,target下已经有了classes文件夹,idea也就不再执行编译了,因此即便这时候你在idea选的是dev环境,生效的也是prod的配置了。

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/172968?site
推荐阅读
相关标签
  

闽ICP备14008679号