SpringBoot項目打包為JAR文件的實現(xiàn)
一、為什么打包
在項目開發(fā)完成后,我們通常會將前后端應用打包,并部署到服務器上進行運行。過去,Java Web 應用在使用 Spring Boot 之前,通常是打包成 WAR 包,并結(jié)合 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.開始打包,點擊右側(cè)的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,可以直接運行。
到此這篇關(guān)于SpringBoot項目打包為JAR文件的實現(xiàn)的文章就介紹到這了,更多相關(guān)SpringBoot打包為JAR文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在SpringBoot+MyBatis項目中實現(xiàn)MySQL讀寫分離的實戰(zhàn)指南
在Spring Boot和MyBatis項目中實現(xiàn)MySQL讀寫分離,主要有兩種思路:一種是在應用層通過代碼和配置手動控制,另一種是借助中間件自動路由,本文介紹了幾種主流的實現(xiàn)方案,需要的朋友可以參考下2025-11-11
自動配置@EnableAutoConfiguration問題
這篇文章主要介紹了自動配置@EnableAutoConfiguration問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06
springboot2.6.7集成springfox3.0.0的示例代碼
這篇文章主要介紹了springboot2.6.7集成springfox3.0.0的示例代碼,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧2024-04-04
Java中Map轉(zhuǎn)List及List轉(zhuǎn)Map的方法(簡單好用!)
這篇文章主要給大家介紹了關(guān)于Java中Map轉(zhuǎn)List及List轉(zhuǎn)Map的相關(guān)資料,可以使用Java 8的Stream API將Java Map轉(zhuǎn)換為List,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下2023-07-07
mybatis plus 自動轉(zhuǎn)駝峰配置小結(jié)
SpringBoot提供兩種配置Mybatis的方式,第一種是通過yml或application.properties文件開啟配置,第二種是使用自定義配置類,通過給容器添加一個ConfigurationCustomizer來實現(xiàn)更靈活的配置,這兩種方法可以根據(jù)項目需求和個人喜好選擇使用2024-10-10

