SpringBoot项目与maven分环境自动打包配置

版权声明: https://blog.csdn.net/bsfz_2018/article/details/83177536

打jar包

springboot项目分环境打包
打jar包

如果为多模块项目,比如我下面目录结构
在这里插入图片描述
其中api工程配置目录如下
在这里插入图片描述
1 首先在顶层工程中配置pom文件添加如下配置

<!--定义打包命令指定的环境对应的profileActive变量值-->
    <profiles>
        <profile>
            <id>dev</id>
            <properties>
                <profileActive>dev</profileActive>
            </properties>
            <activation>
                <!--指定默认激活-->
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <id>prd</id>
            <properties>
                <profileActive>prd</profileActive>
            </properties>
        </profile>
    </profiles>

2 然后在api工程pom文件中添加如下配置

 <!--maven打包-->
    <build>
        <finalName>ftyj</finalName>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <excludes>
                    <exclude>application-prd.properties</exclude>
                    <exclude>application-dev.properties</exclude>
                    <exclude>application.properties</exclude>
                </excludes>
            </resource>
            <!--需要动态添加的资源-->
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <includes>
                    <!--读取打包命令中指定的环境-->
                    <include>application-${profileActive}.properties</include>
                    <include>application.properties</include>
                </includes>
            </resource>
        </resources>
    </build>

3 在application.properties中添加如下引用变量配置
在这里插入图片描述
4 然后开始使用maven命令打包,如果为idea环境,右键项目选择open in terminal
在这里插入图片描述
打开控制台
在这里插入图片描述
5 输入如下打包命令,清理编译打包prd开发环境,意思只将application-prd.properties和application.properties打入jar包
在这里插入图片描述
mvn clean compile package -Dmaven.test.skip=true -Pprd
6 查看编译结果
在这里插入图片描述
用解压缩软件打开jar包
在这里插入图片描述
更换打包dev环境
mvn clean compile package -Dmaven.test.skip=true -Pdev
在这里插入图片描述
可以看见包中已经换成了dev和通用配置文件

7 若为单一工程实例直接将顶层工程pom文件中对环境的配置和api工程队环境配置汇总移入单一工程即可

猜你喜欢

转载自blog.csdn.net/bsfz_2018/article/details/83177536