maven profile實現多環境配置
每次專案部署上線都需要手動去修改配置檔案(比如資料庫配置)然後才能打包,很不方便,可以根據以下教程用maven的profile 實現多環境的配置。
以資料庫的配置為例,在src/main/resources 下新建三個資料夾,分別叫做dev,online,test,分別對應開發環境,線上環境,測試環境。在每個資料夾下拷貝進去jdbc.properties檔案,分別對應不同的資料庫配置。如圖:
在pom.xml檔案中加入以下內容:
<profiles>
<profile>
<!-- 開發環境 -->
<id>dev</id>
<properties>
<env>dev</env>
</properties>
<activation>
<!-- 預設啟用該profile節點-->
<activeByDefault>true</activeByDefault>
</activation>
<build>
<resources>
<resource>
<directory>src/main/resources/dev</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
</profile>
<profile>
<!-- 測試環境 -->
<id>test</id>
<properties>
<env>test</env>
</properties>
<build>
<resources>
<resource>
<directory>src/main/resources/test</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
</profile>
<profile>
<!-- 生產環境 -->
<id>online</id>
<properties>
<env>online</env>
</properties>
<build>
<resources>
<resource>
<directory>src/main/resources/online</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
</build>
</profile>
</profiles>
這個resources裡面的路徑對應上面檔案路徑,resources裡面所有的配置加上各自環境的配置。
專案右鍵-->maven-->Select Maven profiles ,選擇一個環境,修改最好清理一下專案才會生效。一定要clean一下。
選擇profile
選擇profile後,然後執行專案就是你選擇的環境了,或者直接匯出war包。
如果想用maven打包的話,右擊專案-run as -maven build(選擇第二個maven build),會進入如下介面:
goals輸入框,填寫package,勾選上skip tests,profiles 就是你要根據什麼環境來打包,點選apply,點選run,就可以正常打出war包了。
注:打出來的war包會放在專案的target目錄裡面。