我是靠谱客的博主 现实斑马,最近开发中收集的这篇文章主要介绍maven多环境打包配置,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

如下图,为开发环境的配置文件分为dev和server两个,在打包的时候经常需要修改application.properties
在这里插入图片描述下面讲述通过命令以及配置打包不同生产环境文件
首先在pom文件中配置profiles节点,代表着两个环境

 <profiles>
        <profile>
            <id>dev</id>
            <properties>
                <spring.profiles.active>dev</spring.profiles.active>
                <profileActive>dev</profileActive>
            </properties>
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
        </profile>
        <profile>
            <id>server</id>
            <properties>
                <spring.profiles.active>server</spring.profiles.active>
                <profileActive>server</profileActive>
            </properties>
        </profile>

    </profiles>

第二配置build

 <build>

        <finalName>CommonApi</finalName>

        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
                <excludes>
                    <exclude>application-server.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>
                    <include>logback-spring.xml</include>
                    <include>logback.properties</include>

                </includes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.18.1</version>
                <configuration>
                    <skipTests>true</skipTests>
                </configuration>
            </plugin>
        </plugins>
    </build>

其中resources节点可以不写,不写的话 打包文件会将application-dev.properties和application-server.properties都打包进去,不影响使用

application.properties做如下配置

spring.profiles.active= @profileActive@

第三 打包命令
mvn clean package -P dev
加粗斜体部分为打包时选择的环境

完成 结果如下图 未打包application-server 且application文件根据命令动态指定了相应的环境
在这里插入图片描述在这里插入图片描述

最后

以上就是现实斑马为你收集整理的maven多环境打包配置的全部内容,希望文章能够帮你解决maven多环境打包配置所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部