• 【IDEA】Maven踩坑:pom文件中的默认profiles不生效+IDEA中Maven的profiles使用说明


    一、问题即分析

    项目pom文件中的profiles有3个配置:devtestproduction
    默认配置的是dev,如下图:

    但在本地起服务时,读取的配置始终是test里的。

    二、原因

    2.1 maven中的profile说明

    开始并不知道原因,因为特别违反常理,pom文件里的配置不生效你敢信...后来发现其实是IDEA的锅。

    对于IDEA中Maven的使用需要注意以下内容:

    图片内容摘自: https://youmeek.gitbooks.io/intellij-idea-tutorial/content/maven-skill-introduce.html

    注意:上面说的profile我们都理解,有多个也理解,但同时激活多个profile是什么鬼?
    如果我同时激活两个,而这两个里面对于同一个属性的值配置的并不同,那么Maven或者说IDEA要如何选择?选择哪个?

    一看我们的项目,果然是这个原因:同时选中了devtest的配置,但实际生效的是test,即使我们pom里面配置的默认是dev...而且,不管我们怎么改dev,配置始终不生效,因为实际使用的配置是test

    2.2 为什么IDEA会同时选中devtest

    因为我们这个项目是一个多模块项目,里面有3个Web,其中一个的默认配置是test,另外两个的默认配置都是 dev。可能因为这样导致同时选中了devtest

    2.3 为什么之前没问题?

    因为之前每个项目里的devtest配置都一样,这次上线,因为测试原因,修改了配置,将test的配置改为了预发的配置。然后本地起服务,读取了预发的配置,就出了问题。

    三、解决

    上图中的配置,只选中dev...果然,问题解决了。不能都不选,不然连项目都无法编译...

    四、结束

  • 相关阅读:
    NSURLSessionDataDelegate 文件下载
    NSURLConnection 大文件下载
    全屏滑动
    qq粒子效果
    iOS 技巧
    iOS 15 新特性适配
    iOS 字符串转json 字符串转数组
    iOS 微信分享显示未验证应用2
    iOS 微信分享显示未验证应用1
    iOS 隐藏系统音量提示框
  • 原文地址:https://www.cnblogs.com/buwuliao/p/9296461.html
Copyright © 2020-2023  润新知