maven配置多环境开发

maven+springboot+yml

参考黑马的maven高级教程和springboot教程运维篇

第一步 在service项目pom中配置(service项目是中层父模块,下有多个子模块)

第二步 在需要的子模块yml文件中引用  

(properties用${}解析失败,yml成功了,所以最后用了yml)

 第三步  添加过滤 在service项目pom中配置(service项目是中层父模块,下有多个子模块)

​​​​​​​         我的跟截图不一样,我的没有加${project.basedir}/      

        我直接src/main/resources

        加上能不能用我没有测试

下面是我的配置

第一步 在service项目pom中配置(service项目是中层父模块,下有多个子模块)

 

第二步 在需要的子模块yml文件中引用  

第三步 添加过滤 在service项目pom中配置(service项目是中层父模块,下有多个子模块)

下面是代码

pom文件

  <build>
        <!--        这一段放guli_parent中也可以,放service层也可以-->
        <!--        更新:最顶级pom中还要配置上下面这一段-->
        <!--        目的是配置xml properties yml yaml的路径 防止改变mapper路径后找不到mapper  -->
        <!--        不能只配置include 中src/main/java下的xml 因为include是"只包括"  只配置这个不配置resources不行 -->
        <!--        所以配置src/main/java后也要把src/main/resources加上  resources目录下的各种配置文件才能被扫描到-->
        <resources>
            <resource>
                <!--   当xml文件在类路径里不在resources目录时应该配置这个,同时application.properties文件也要修改配置-->
                <!--   项目编译时,告诉idea,在编译的时候将src/main/java下的xml一起打包进class文件夹中,
                这样就不会报错Invalid bound statement (not found)-->
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
                <filtering>true</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.properties</include>
                    <include>**/*.yml</include>
                    <include>**/*.yaml</include>
                    <include>**/*.xml</include>
                </includes>
                <!--设置能够解析,开启过滤,默认是false,设置成true才能替换成功 -->
                <filtering>true</filtering>
            </resource>
        </resources>
    </build>

    <!-- 多环境开发的属性 在yml文件中直接用=@profile.active@   注意资源开启过滤 就是上面的resources内需要<filtering>true</filtering>  -->
    <!--    换环境直接把  <activation><activeByDefault>true</activeByDefault></activation>   挪到要换的位置-->
    <profiles>
        <profile>
            <id>dev_env</id>
            <properties>
                <profile.active>dev</profile.active>
            </properties>
            <activation><activeByDefault>true</activeByDefault></activation>

        </profile>
        <profile>
            <id>pro_env</id>
            <properties>
                <profile.active>pro</profile.active>
            </properties>

        </profile>
    </profiles>

yml文件

# 应用环境
# 公共配置
spring:
  profiles:
    active: @profile.active@
---
# 设置环境
# 生产环境
spring:
  profiles: pro
  #nacos服务地址  实际项目中这里是服务器的ip
  cloud:
    nacos:
      discovery:
        server-addr: 43.142.91.228:8848
---
# 开发环境
spring:
  profiles: dev
  #nacos服务地址  实际项目中这里是服务器的ip
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值