SpringBoot項目打包為JAR文件的實現(xiàn)
一、為什么打包
在項目開發(fā)完成后,我們通常會將前后端應用打包,并部署到服務器上進行運行。過去,Java Web 應用在使用 Spring Boot 之前,通常是打包成 WAR 包,并結合 Tomcat 進行部署。然而,對于 Spring Boot,官方推薦將其應用打包成一個 fat jar(即 Spring Boot 默認的打包方式)。這種 fat jar 包含了項目所有的依賴 jar 包,并且將 Tomcat 內(nèi)置在其中。因此,在部署 Spring Boot 應用時,無需單獨配置 Tomcat,也不需要預先安裝任何服務器,只需簡單地上傳 jar 包即可。
這種方式極大地簡化了部署過程,讓開發(fā)者可以更專注于業(yè)務邏輯的實現(xiàn),而不必花費過多的時間在環(huán)境配置上。
二、如何打包
方法一:使用IDEA進行打包
1.打開項目,右擊項目選中Open Module Settings
進入project Structure
,如下圖所示:
選中Artifacts
,點擊中間的加號(Project Settings->Artifacts->JAR->From modules with dependencies ),如下圖所示:
2.彈出Create JAR from Modules
,選擇‘Main Class’,然后點擊OK
3.開始打包,點擊右側的Maven Projects,打開LIfecycle
,先點擊clean
,再點擊package
,生成target文件夾,里面有以項目名命名加版本號的jar文件,至此打包完成。
方法二:使用maven進行打包
SpringBoot自帶一個更簡單的spring-boot-maven-plugin插件可以用來打包,只需要在pom.xml中加入以下配置:
<project> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
無需任何配置,這個插件會自動定位應用程序的入口Class,執(zhí)行以下Maven命令即可打包:
$ mvn clean package
三、運行jar包
進入jar所在的文件夾,使用java -jar
命令運行jar,項目就能啟動
java -jar demoa-0.0.1-SNAPSHOT.jar
四、注意
因為springboot內(nèi)置了tomcat,所以springboot項目打包成jar可以免去tomcat的配置,如果是打包成war包,則還需要配置tomcat。
打包后在target目錄下有兩個jar文件,其中有一個jar包后綴為
.original
,這是Maven標準打包插件打的jar包,它只包含我們自己的Class,不包含依賴,而后綴為.jar
的是SpringBoot打包插件創(chuàng)建的包含依賴的jar,可以直接運行。
到此這篇關于SpringBoot項目打包為JAR文件的實現(xiàn)的文章就介紹到這了,更多相關SpringBoot打包為JAR文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
java環(huán)境變量的配置方法圖文詳解【win10環(huán)境為例】
這篇文章主要介紹了java環(huán)境變量的配置方法,結合圖文形式詳細分析了win10環(huán)境下java環(huán)境變量的配置方法與相關操作注意事項,需要的朋友可以參考下2020-04-04使用SpringBoot與Thrift實現(xiàn)RPC通信的方式詳解
在微服務架構的世界里,服務間的通信機制選擇成為了關鍵決策之一,RPC因其簡潔、高效的特點備受青睞,本文將詳細探討如何利用Spring?Boot和Thrift框架構建RPC通信,讓讀者理解其內(nèi)在原理及實現(xiàn)方式,需要的朋友可以參考下2023-10-10Spring Boot集成kubernetes客戶端實現(xiàn)API操作k8s集群的方案
Kubernetes是一個開源的容器編排平臺,可以自動化在部署、管理和擴展容器化應用過程中涉及的許多手動操作,這篇文章主要介紹了Spring Boot集成kubernetes客戶端實現(xiàn)API操作k8s集群,需要的朋友可以參考下2024-08-08Java HttpClient-Restful工具各種請求高度封裝提煉及總結
這篇文章主要介紹了Java HttpClient-Restful工具各種請求高度封裝提煉及總結,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-10-10