stringBoot项目使用Maven分环境打包

stringBoot项目使用Maven分环境打包

需求:后端项目要发布开发环境,测试环境,生产环境等,每次修改配置文件太麻烦。通过配置在使用maven实现分环境打包,以下文档说明 dev测试环境 jilinhenan分别是两个生成环境。

第一步:修改application.yml配置文件

如图可以看出项目的目录结构,resource目录下放置项目的配置文件,其中

application.yml配置开发环境、测试环境、生产环境公共的配置。(将数据库配置、redis配置、server等有差异的配置整体 提出到application-dev.yml、application-henan.yml、application-jilin.yml)

修改application.yml文件中的(如果没有spring. Profiles. active)自己添加。

Active在pom文件中使用

 

spring:
  profiles:
    active:
@activatedProperties@

如图:(注意层级结构

 

第二步:添加或编辑不同环境的配置文件

如下其中一个配置文件dev、henan、jilin主要是数据源地址不同。

第三步:修改pom.xml文件

1.添加以下代码 注意:dev、jilin、henan 要和application-XX.yml文件名中的XX一致

<profiles>

    <profile>

        <id>dev</id>

        <properties>

            <!-- 环境标识,需要与配置文件的名称相对应 -->

            <activatedProperties>dev</activatedProperties>

        </properties>

        <activation>

            <!-- 默认环境 -->

            <activeByDefault>true</activeByDefault>

        </activation>

    </profile>

    <profile>

        <id>jilin</id>

        <properties>

            <activatedProperties>jilin</activatedProperties>

        </properties>

    </profile>

    <profile>

        <id>henan</id>

        <properties>

            <activatedProperties>henan</activatedProperties>

        </properties>

    </profile>

</profiles>

 

如果不知道在哪儿加如图:

2.build中添加以下代码

<!--profile文件指定打包启动加载的哪个配置文件,可根据环境的多少分别进行配置-->

<!--resource配置指定系统配置文件加载的路径-->

<!--其中的include表示加载的哪些文件到容器中,如果没有指定所有的配置加载到容器中,在配置文件中的classpath:/**方式引用的文件不会加载到容器中,导致启动失败-->

<resources>

    <resource>

        <directory>src/main/resources</directory>

        <includes>

            <include>application-${activatedProperties}.yml</include>

            <include>application.yml</include>

            <include>mapper/**</include>

            <include>*.xml</include>

            <include>*.properties</include>

        </includes>

        <filtering>true</filtering>

    </resource>

</resources>

如图配置详解:

3.plugin中添加如下代码

<!--maven在替换变量的时候,默认${}和@@表达式均可替换 该配置主要配置变量的分隔符,我们配置为@-->

<plugin>

    <groupId>org.apache.maven.plugins</groupId>

    <artifactId>maven-resources-plugin</artifactId>

    <configuration>

        <delimiters>

            <delimiter>@</delimiter>

        </delimiters>

        <useDefaultDelimiters>false</useDefaultDelimiters>

    </configuration>

</plugin>

 

如图:

第四步:打包发布

 

mvn clean install -Dmaven.test.skip=true      //测试环境

mvn clean install -Dmaven.test.skip=true -P jilin  //jilin生产环境

mvn clean install -Dmaven.test.skip=true -P henan  //henan生产环境

 

 

说明:clean是清除之前的jar包,install是打包到本地 -Dmaven.test.skip=true是忽略测试代码;

mvn clean install -Dmaven.test.skip=true -P jilin

 

核心是:命令 –P 参数

 

如图:

打包结束后可以在target看到刚打jar包

解压jar包或查看target/classes目录下的配置文件

有如下结果就已经分环境了!!

 

本地测试:运行

吧jar包拷贝到c盘(随便地址)

运行黑窗口

 

java -jar C:\hcy-oe-service-0.0.1-SNAPSHOT.jar

 

查看是否启动成功

测试,可以直接用浏览器测试看接口是否能正常访问。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值