Maven系列(八)assembly打包-程序和依賴jar包分開化+多環(huán)境

maven.png

前言

上一篇介紹的是“assembly打包-程序和依賴jar包分開化”的配置方法, 這一篇就來介紹下如何多環(huán)境的配置,這里請(qǐng)看清楚,是“程序和依賴jar包分開化+多環(huán)境”跟之前的不太一樣哦。

需要修改的配置

項(xiàng)目的目錄結(jié)構(gòu)


工程結(jié)構(gòu).png

pom

添加profile配置,我這里同樣配置了三種環(huán)境

<profiles>
        <profile>
            <id>local</id>
            <properties>
                <env>local</env>
            </properties>
            <!-- 如果不指定ID,默認(rèn)是本地環(huán)境-->
            <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>
            <!-- 去除需要多環(huán)境配置的文件-->
            <excludes>
                <exclude>application.properties</exclude>
            </excludes>
        </fileSet>
        <!--多環(huán)境配置-->
        <fileSet>
            <!--${env} 可以獲取打包命令里的參數(shù)-->
            <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>

多環(huán)境打包測(cè)試

環(huán)境 命令
本地 mvn clean package -P local
測(cè)試 mvn clean package -P test
生產(chǎn) mvn clean package -P product

后記

  • 關(guān)于assembly打包,mybatis的xml訪問不了的問題已經(jīng)解決了,注意配置mybatis.mapperLocations=classpath:mapper/*.xml
  • maven的功能之強(qiáng)大到你無法想象,我之前的一系列文章對(duì)我所接觸到的maven所有用法都有較詳細(xì)的配置說明
  • 以后有可能會(huì)開始嘗試使用gradle打包

歡迎瀏覽我的博客

代碼在Github

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 134,993評(píng)論 19 139
  • 如果對(duì)maven不會(huì)用甚至不知道是什么的話,建議先看看下面幾篇,看完,相信你會(huì)有所啟發(fā),并會(huì)對(duì)項(xiàng)目進(jìn)行一個(gè)完整的依...
    冬天只愛早晨閱讀 2,719評(píng)論 0 8
  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 46,974評(píng)論 6 342
  • 技術(shù)博客轉(zhuǎn)到CSDN了,請(qǐng)點(diǎn)這里https://blog.csdn.net/daerzei/article/det...
    荒野雄兵閱讀 8,432評(píng)論 0 1
  • 細(xì)雨敲窗 落地閑花無聲 寒煙輕起 孤枝難抵秋寒 想你白衣如畫 曾攜手游遍芳叢 浮云一別 雁來音信無憑 流水十年 小...
    有云心更閑閱讀 698評(píng)論 52 149