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>
<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 能夠快速方便地運行項目,是一個不錯的構造組件。
閱讀更多 java程序員工程師 的文章