美文网首页
maven之多环境打包的实现

maven之多环境打包的实现

作者: mysimplebook | 来源:发表于2020-06-14 11:33 被阅读0次

            实现不同环境的打包,就是在pom.xml中定义不同的环境配置,然后将需要的配置打包入最终的压缩包中。

            首先定义几个不同的配置文件,然后在pom.xml中定义几个不同的<profile>标签。每个profile可以看作是POM的一部分配置,我们可以根据不同的环境应用不同的profile,从而达到不同环境使用不同的POM配置的目的。

            假如配置了3种项目运行环境,在src/main/resources目录下增加如下环境配置

    ├── conf

    │  ├── dev

    │  │  ├── application.properties

    │  │  ├── conf.properties

        │  ├── db.properties

    │  ├── online

    │  │  ├── application.properties

    │  │  ├── conf.properties

    │  │  ├── db.properties

    │  └── test

    │  │  ├── application.properties

    │  │  ├── conf.properties

    │  │  ├── db.properties

    在(子)项目pom.xml中<project>标签下加入如下的<profiles>标签,

        <!-- 多环境打包 start -->

        <profiles>

            <!-- 开发环境配置 -->

            <profile>

                <id>dev</id>

                <properties>

                    <profiles.active>dev</profiles.active>

                </properties>

                <activation>

                    <activeByDefault>true</activeByDefault>

                </activation>

            </profile>

            <!-- 测试环境配置 -->

            <profile>

                <id>test</id>

                <properties>

                    <profiles.active>test</profiles.active>

                </properties>

            </profile>

            <!-- 正式环境 -->

            <profile>

                <id>online</id>

                <properties>

                    <profiles.active>online</profiles.active>

                </properties>

            </profile>

        </profiles>

        <!-- 多环境打包 end -->

            在profile标签中定义一个 id 标签,这样就可以将不同环境的配置区分开。而变量profiles.active的值对应了具体的环境配置名称。为了引用这些环境配置,需要在pom.xml文件中使用该变量的值,在build->resources标签下增加如下内容,

            <resource>

                    <directory>src/main/resources/conf/${profiles.active}</directory>

                </resource>

            在 pom 中配置好后就可以在 mvn 命令中用-P参数激活指定 id 对应的 profile 进行动态构建了。比如打测试环境包,执行:

                                                 mvn clean install -Ptest

            这样将src/main/resources/conf/test下的配置打包入项目。

    相关文章

      网友评论

          本文标题:maven之多环境打包的实现

          本文链接:https://www.haomeiwen.com/subject/erdxxktx.html