這篇文章主要講解了“Spring Boot打一個可執(zhí)行Jar 包的方法”,文中的講解內(nèi)容簡單清晰,易于學(xué)習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習“Spring Boot打一個可執(zhí)行Jar 包的方法”吧!
創(chuàng)新互聯(lián)于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站制作、網(wǎng)站建設(shè)網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元永平做網(wǎng)站,已為上家服務(wù),為永平各地企業(yè)和個人服務(wù),聯(lián)系電話:13518219792
傳統(tǒng)的 Java 應(yīng)用程序都需要打一個 war 包,并到到 Tomcat webapps 目錄下運行。
Java 支持打 Jar 包,但沒有提供一個標準的方式在一個 Jar 包內(nèi)再加載嵌入別的 Jar 包,一般需要擴展類加載器來實現(xiàn),即使這樣,也做不到打成一個包運行,因為沒有 Servlet 容器。
有了 Spring Boot 框架之后,這一切都變得簡單,我們可以很方便的將應(yīng)用程序打成一個可執(zhí)行 Jar 包。
<plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> <configuration> <classifier>exec-${env}</classifier> </configuration> </execution> </executions> </plugin>
這里是添加了一個 Maven 打包插件,通過配置可以定制打成的 Jar 包的格式,如:javastack-exec-dev.jar。
如果你是用的 spring-boot-starter-parent 方式來使用 Spring Boot,那就不用寫 executions 選項,因為它包括了 executions repackage 構(gòu)建配置。
這個插件的更多用法參考:
https://docs.spring.io/spring-boot/docs/2.1.3.RELEASE/maven-plugin/usage.html
使用 mvn package 命令或者 IDE 中的 Maven 插件都可以打包。Maven 不熟悉的請關(guān)注Java技術(shù)棧微信公眾號,在后臺回復(fù):maven,干貨棧長我都整理好了。
打完包之后,在項目 target 目錄就可以看到打成的 Jar 包。
這個 Jar 包除了包括編譯完的 class 文件,還內(nèi)置了 Servlet 容器,并集成了所有需要依賴的其他 Jar 包庫,我們來看下這個 Jar 包的目錄結(jié)構(gòu)。
├─BOOT-INF │ ├─classes │ │ └─cn │ │ └─javastack │ │ └─demo │ └─lib ├─META-INF │ └─maven │ └─cn.javastack │ └─demo └─org └─springframework └─boot └─loader ├─archive ├─data ├─jar └─util
在文件 \META-INF\MANIFEST.MF 中找到應(yīng)用程序啟動類:
Manifest-Version: 1.0 Archiver-Version: Plexus Archiver Built-By: javastack Start-Class: cn.javastack.demo.Application Spring-Boot-Classes: BOOT-INF/classes/ Spring-Boot-Lib: BOOT-INF/lib/ Spring-Boot-Version: 2.1.3.RELEASE Created-By: Apache Maven 3.5.0 Build-Jdk: 1.8.0_151 Main-Class: org.springframework.boot.loader.JarLauncher
運行命令格式:
$ java -jar xxx.jar
這個命令的更多用法請看這篇文章:Java Jar包的壓縮、解壓使用指南,或者關(guān)注Java技術(shù)棧微信公眾號,在后臺回復(fù):java。
運行命令演示:
$ java -jar javastack-exec-dev.jar
. ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.1.3.RELEASE) ....... . . . ....... . . . (log output here) ....... . . . ........ Started Example in 2.536 seconds (JVM running for 2.864)
好了,跑起來了。
感謝各位的閱讀,以上就是“Spring Boot打一個可執(zhí)行Jar 包的方法”的內(nèi)容了,經(jīng)過本文的學(xué)習后,相信大家對Spring Boot打一個可執(zhí)行Jar 包的方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點的文章,歡迎關(guān)注!
新聞名稱:SpringBoot打一個可執(zhí)行Jar包的方法
鏈接URL:http://jinyejixie.com/article30/poeoso.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供、定制網(wǎng)站、網(wǎng)站改版、做網(wǎng)站、小程序開發(fā)、移動網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)