天天看點

Maven環境隔離配置

作用

不用的環境中(開發環境,生産環境,測試環境),項目的配置資訊有些是不一樣的,比如常見的資料連接配接的使用者名,密碼,圖檔資源檔案的儲存位址。配置環境隔離使得我們的項目更靈活地應用于各種環境,避免手動更改配置資訊。

步驟:

1.修改pom.xml檔案

注意:

1.resources節點在 build節點的下一節

2.profiles節點和build節點同級

補充:

{deploy.type}的值為profiles節點下的deploy.type

<!-- Maven環境隔離的配置 -->
    <resources>
      <resource>
         <!-- 指定相應環境資源目錄 -->
        <directory>src/main/resources.${deploy.type}</directory>
         <!--排除的資源-->
        <excludes>
          <exclude>*.jsp</exclude>
        </excludes>
      </resource>
       <!-- 指向不同環境公用的資源檔案 -->
      <resource>
        <directory>src/main/resources</directory>
      </resource>
    </resources>

  </build>

  <!-- Maven環境隔離的配置參數 -->
  <profiles>
    <profile>
      <id>dev</id>
      <activation>
    <!-- 設定dev為本地開發時的預設環境 -->
        <activeByDefault>true</activeByDefaut>
      </activation>
      <properties>
     <!-- 這裡的值和id儲存一緻 -->
        <deploy.type>dev</deploy.type>
      </properties>
    </profile>
    <profile>
      <id>beta</id>
      <properties>
        <deploy.type>beta</deploy.type>
      </properties>
    </profile>
    <profile>
      <id>prod</id>
      <properties>
        <deploy.type>prod</deploy.type>
      </properties>
    </profile>
  </profiles>
           

配置完pom.xml檔案,點選IEDA右側的Maven選項,看到效果如下圖

Maven環境隔離配置

2.驗證

通過maven編譯打包指令,檢視編譯的結果中的檔案資訊是否為不同的環境資訊驗證是否配置成功。

mvn clean package -Dmaven.test.skip=true -Pdev

補充:

1.-P{環境參數}

2.mvn compile :編譯,将Java 源程式編譯成 class 位元組碼檔案

3.mvn test :測試,并生成測試報告

4.mvn clean :将以前編譯得到的舊的 class 位元組碼檔案删除

5.mvn pakage :打包,動态 web工程打 war包,Java工程打 jar 包。

6.mvn install :将項目生成 jar 包放在倉庫中,以便别的子產品調用

7.maven.test.skip=true:跳過單元測試