java

maven环境隔离

2019-03-04  本文已影响0人  二妹是只猫

环境隔离在实际工作中必然会遇到,属于一次投入长久收益的事情,所以本篇把maven的环境隔离总结一下。

maven环境隔离解决的实际问题:
通常实际的项目环境:
本地开发环境(Local)
开发环境(Dev)
测试环境(Beta)
线上环境(Prod)
实际操作:
  1. 拿出需要隔离的文件:
    resource.jpg
    如上图,我需要隔离datasource.properties文件。首先在不带后缀的主resources中将datasource.properties拿出,放到创建的3个有后缀resources文件中,记住他们的后缀分别是beta、dev、prod,待会儿要用。
  2. pom文件中build节点下添加需要隔离的文件:
    <build>
      <resources>
            <resource>
                <directory>src/main/resources.${env}}</directory>
                <excludes>
                    <exclude>*.jsp</exclude>
                </excludes>
            </resource>

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

    </build>

在resources中用${环境名}代表要加的后缀。

  1. 在pom根节点下profiles中添加环境:
<profiles>
        <profile>
            <id>dev</id>
            <properties>
                <env>dev</env>
            </properties>
        </profile>
        <profile>
            <id>beta</id>
                 <activation>
                    <activeByDefault>true</activeByDefault>
                </activation>
            <properties>
                <env>beta</env>
            </properties>
        </profile>
        <profile>
            <id>prod</id>
            <properties>
                <env>prod</env>
            </properties>
        </profile>
</profiles>

这个时候就会提醒你pom文件变动是否编译,确定后我们在idea右侧的Maven Projects中就可以看到环境已经生成了并且默认beta环境:


Maven Projects.jpg

这样一个简单的环境隔离就OK了。

补充:可以通过命令:mvn clean package -Dmaven.test.skip=true -Pbeta 来使用mvn命令编译项目,然后查看target文件下的class文件查看是否隔离成功 (-P后跟的是你想要编译的环境,这里填的是beta)

上一篇 下一篇

猜你喜欢

热点阅读