Maven系列(八)assembly打包-程式和依賴jar包分開化+多環境
阿新 • • 發佈:2019-01-22
前言
上一篇介紹的是“assembly打包-程式和依賴jar包分開化”的配置方法, 這一篇就來介紹下如何多環境的配置,這裡請看清楚,是“程式和依賴jar包分開化+多環境”跟之前的不太一樣哦。
需要修改的配置
專案的目錄結構
pom
新增profile
配置,我這裡同樣配置了三種環境
<profiles>
<profile>
<id>local</id>
<properties>
<env>local</env >
</properties>
<!-- 如果不指定ID,預設是本地環境-->
<activation>
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>test</id>
<properties >
<env>test</env>
</properties>
</profile>
<profile>
<id>product</id>
<properties>
<env>product</env>
</properties>
</profile>
</profiles >
package.xml
新增了兩處
<fileSets>
<!--需要包含的檔案與輸出的路徑-->
<fileSet>
<directory>src/main/bin</directory>
<outputDirectory>bin/</outputDirectory>
</fileSet>
<fileSet>
<directory>src/main/resources</directory>
<outputDirectory>/</outputDirectory>
<!-- 去除需要多環境配置的檔案-->
<excludes>
<exclude>application.properties</exclude>
</excludes>
</fileSet>
<!--多環境配置-->
<fileSet>
<!--${env} 可以獲取打包命令裡的引數-->
<directory>src/main/resources/env/${env}/</directory>
<outputDirectory>/</outputDirectory>
</fileSet>
<fileSet>
<directory>${project.build.directory}</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>*.jar</include>
</includes>
</fileSet>
</fileSets>
多環境打包測試
環境 | 命令 |
---|---|
本地 | mvn clean package -P local |
測試 | mvn clean package -P test |
生產 | mvn clean package -P product |
後記
- 關於assembly打包,mybatis的xml訪問不了的問題已經解決了,注意配置
mybatis.mapperLocations=classpath:mapper/*.xml
- maven的功能之強大到你無法想象,我之前的一系列文章對我所接觸到的maven所有用法都有較詳細的配置說明
- 以後有可能會開始嘗試使用gradle打包