SpringBoot構建微服務實戰之服務註冊的快速打包

SpringBoot構建微服務實戰 之 服務註冊的快速打包

下面我將介紹一種企業級應用的打包方式用來提供運營支持。即使用 appassembler-maven-plugin 來快速打包、部署、運行SpringBoot 服務。

Appassembler

官方介紹:

The Application Assembler Plugin is a Maven plugin for generating>

通常理解:

Appassembler 是Maven 的一個構造組件,其目的在於生成可運行的腳本(同時支持Win.和Unix.)來啟動java 應用程序。同時將項目的所有依賴(jar的形式)統一打包放在指定的路徑下以支持應用程序的運行。

實例

前面我們學習了微服務的註冊,但畢竟是在Eclipse IDE中啟動的。總的來說運行方式不友好,因而我們想通過直接運行一個腳本就能將我們的服務拉起來,這樣運維人員便可以隨時接手我們的部分工作進而一定程度上減輕我們的工作量(不是為了偷懶- -!)。下面我們將來實現一下~~

<build>

<plugins>

<plugin>

<groupid>org.codehaus.mojo/<groupid>

<artifactid>appassembler-maven-plugin/<artifactid>

<version>1.10/<version>

<configuration>

<platforms>

<platform>windows/<platform>

<platform>unix/<platform>

<assembledirectory>${project.build.directory}/contract/<assembledirectory>

<repositoryname>lib/<repositoryname>

<binfolder>bin/<binfolder>

<configurationdirectory>conf/<configurationdirectory>

<copyconfigurationdirectory>true/<copyconfigurationdirectory>

<configurationsourcedirectory>src/main/resources/<configurationsourcedirectory>

<repositorylayout>flat/<repositorylayout>

<encoding>UTF-8/<encoding>

<logsdirectory>logs/<logsdirectory>

<tempdirectory>tmp/<tempdirectory>

<programs>

<program>

contract

<mainclass>com.sstps.contract.App/<mainclass>

<jvmsettings>

<extraarguments>

<extraargument>-server/<extraargument>

<extraargument>-Xmx2G/<extraargument>

<extraargument>-Xms2G/<extraargument>

配置的屬性請看註解。

執行打包命令:clean package appassembler:assemble

查看生成的文件包

bin

market: Unix shell 腳本

market.bat Windows Bat 腳本

conf

將原來classpath下的所有文件原封不動copy 過來。

lib

所有的依賴

logs 日誌輸出文件

tmp 臨時文件存放點

運行java 程序文件我們運行 contract.bat 來將我們的contract服務拉起來。

小結

使用 Application Assembler Maven Plugin 能夠快速方便地運行項目,是一個不錯的構造組件。