首頁  >  文章  >  Java  >  如何使用maven打包發布springboot

如何使用maven打包發布springboot

不言
不言轉載
2018-11-24 16:51:032616瀏覽

這篇文章帶給大家的內容是關於如何使用maven打包發布springboot,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

本篇分享如何使用maven便利我們打springboot的發布包;我這裡使用的是idea開發工具,首先創建了多個module的專案結構,如圖:

要對多個module的項目做打包,一般情況都是在父級pom中配置打包的插件,其他module的pom不需要特別的配置,當配置完成後,點擊idea中maven工具的package,就能執行一系列打包操作;

#這裡先使用maven-jar-plugin插件,在父級pom中加入配置如下:

<!--通过maven-jar-plugin插件打jar包-->
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <archive>
            <manifest>
                <addClasspath>true</addClasspath>
                <classpathPrefix>lib/</classpathPrefix>
                <!--main入口-->
                <mainClass>com.platform.WebApplication</mainClass>
            </manifest>
        </archive>
        <!--包含的配置文件-->
        <includes>
        </includes>
        <excludes>
        </excludes>
    </configuration>
</plugin>

上面的設定我們需要注意以下幾個節點:

  • mainClass:我們需要指定main入口,當然這不是必須的,如果同一個project中有多個main入口,那打包的時候才需要,僅僅就一個main入口這個其實忽略;

  • classpathPrefix:指定加入classpath中依賴套件所在的前綴資料夾名稱

  • addClasspath:依賴套件放加入到classpath中,預設true

  • includes:需要包含在jar中的文件,一般不配置(注意:如果配置路徑不合適,可能會吧class排除掉)

  • excludes:如果是要做jar包外部配置文件的話,這裡需要用excludes排除這些設定檔一起打包在jar中

使用maven-jar-plugin插件針對專案工程來打包,這個時候透過maven的package指令打包,能看到jar中有一個lib資料夾(預設),其中包含了工程專案中所引入的第三方依賴包,透過java -jar xxx.jar能看到jar成功啟動:

在規範的專案中,一般有dev,test,uat,pro等環境,針對這些個環境需要有不同的配置,springboot中可以透過application-dev|test|...yml來區分不同的配置,僅僅需要在預設的application.yml中加入spring.profiles.active=dev|test...就行了;

這種方式有個不便的地方,例如本地調試或發佈上線都需要來回修改active的值(當然透過jar啟動時,設定命令列active參數也可以),不是很方便;下面採用在pom中配置profiles,然後透過在idea介面上滑鼠點選選擇啟動所使用的設定;首先,在main層建立設定檔目錄如下結構:

為了區分測試,這裡對不同環境設定檔設定了server.port來指定不同埠(dev:3082,pro:3182)
然後,在父級pom中配置如下profiles資訊:

<profiles>
        <profile>
            <id>dev</id>
            <!--默认运行配置-->
            <activation>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <activeProfile>dev</activeProfile>
            </properties>
        </profile>
        <profile>
            <id>test</id>
            <properties>
                <activeProfile>test</activeProfile>
            </properties>
        </profile>
        <profile>
            <id>uat</id>
            <properties>
                <activeProfile>uat</activeProfile>
            </properties>
        </profile>
        <profile>
            <id>pro</id>
            <properties>
                <activeProfile>pro</activeProfile>
            </properties>
        </profile>
    </profiles>

節點說明:

  • activeByDefault :設定為預設運行配置

  • activeProfile:所選的啟動配置,它的值對應上面建立profiles下面的dev|test|pro資料夾

然後,在pom中的build增加resources節點配置:

<resources>
    <!--指定所使用的配置文件目录-->
    <resource>
        <directory>src/main/profiles/${activeProfile}</directory>
    </resource>
</resources>

此刻我們的設定就完成了,正常情況下idea上maven模組能看到這樣的圖面:

這個時候僅僅只需要我們勾選這些個按鈕就行了,不管是調試還是最後打包,都按照這個來獲取所需的配置文件。

以上是如何使用maven打包發布springboot的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:cnblogs.com。如有侵權,請聯絡admin@php.cn刪除