SmartAdmin——1、Maven构建配置和激活SpringBoot配置文件
本文最后更新于 523 天前,其中的信息可能已经有所发展或是发生改变。

SmartAdmin 是由【1024创新实验室】使用SpringBoot2 和 Vue3 Setup 语法糖、 组合式Composition Api (同时支持JavaScript和TypeScript双版本) ,开发出的一套简洁、易用的中后台解决方案!我们开源一套漂亮的代码和一套整洁的代码规范,让大家在这浮躁的代码世界里感受到一股把代码写好的清流!减少加班,快乐工作,热爱代码,更热爱生活!
https://smartadmin.1024lab.net/
https://github.com/1024-lab/smart-admin

一、Maven配置里使用SpringBoot配置里的属性

            <resource>
                <directory>src/main/resources/${profiles.active}</directory>
                <filtering>true</filtering>
                <includes>
                    <include>*.properties</include>
                    <include>*.xml</include>
                </includes>
            </resource>
  • maven里的<filtering>true</filtering>

    1. Spring EL表达式和MAVEN的占位符表达式长得一样,但两者默认进水不犯河水,不能再Spring的范围内取maven的参数

    2. filtering的作用就是打通两者的连接, 让井水犯河水, 具体来说是让Spring的范围内能取到maven的参数

    3. filtering的使用要配合resource一起使用: 前者开启打通连接,后者指定打通的范围.

  • 如果你的项目继承了spring-boot-starter-parent,如果想在application.properties中使用maven的占位符以获取maven的参数,此时就不能用${},因为可能会与EL表达式冲突,怎么办?

    此时parent依赖将maven占位符表达式默认改为@var@的形式. 所以只能用@var@替代${var}

二、激活不同的profile

    <profiles>
          <profile>
            <!--不同环境Profile的唯一id-->
              <id>dev</id>
              <properties>                  
                <!--profiles.active是自定义的字段(名字随便起),自定义字段可以有多个-->
                <profiles.active>dev</profiles.active>
              </properties>
              <activation>
                  <activeByDefault>true</activeByDefault>
              </activation>
          </profile>
          <profile>
              <id>telework</id>
              <properties>
                  <profiles.active>telework</profiles.active>
              </properties>
          </profile>
          <profile>
              <id>sit</id>
              <properties>
                  <profiles.active>sit</profiles.active>
              </properties>
          </profile>
          <profile>
              <id>pre</id>
              <properties>
                  <profiles.active>pre</profiles.active>
              </properties>
          </profile>
          <profile>
              <id>prod</id>
              <properties>
                  <profiles.active>prod</profiles.active>
              </properties>
          </profile>
      </profiles>
  • 当我们打包项目时,激活不同的环境,profiles.active字段就会被赋予不同的值

  • 使用maven打包时通过-P参数,-P后跟上profile的唯一id,如mvn clean package -Ptest

  • 总结:可以通过maven命令给profiles.active赋予不同的值

三、通过maven指定SpringBoot激活哪套配置文件

spring.profiles.active=@profiles.active@

  • 这儿就是第一点说的,SpringBoot配置文件里使用maven属性
  • 到这里,上述知识可以连接起来了
    • 通过第一点可知:maven配置文件里读取SpringBoot的spring.profiles.active属性
    • 通过第三点可知:SpringBoot的spring.profiles.active属性读取maven的自定义属性profiles.active
    • 通过第二点可知:通过maven命令指定maven的profiles.active属性
    • 结论:可以通过maven命令决定打包和使用哪套配置文件
作者:Yuyy
博客:https://yuyy.info
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇