spring-boot中spring-boot-maven-plugin報(bào)紅錯(cuò)誤及解決
spring-boot-maven-plugin報(bào)紅錯(cuò)誤
項(xiàng)目場景
第一次創(chuàng)建springboot的時(shí)候,spring-boot-maven-plugin 爆紅
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
// 紅彤彤
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>解決方案
1.在選擇創(chuàng)建Spring Initailizr項(xiàng)目時(shí),選擇spring-boot版本

2.忘記選擇版本號時(shí)(idea默認(rèn)2.5.4),在如下圖所示的地方加入version版本號,要與spring-boot版本號一致哦~

再刷新一下pom.xml就ok了~
Maven插件spring-boot-maven-plugin
應(yīng)用背景
直接使用maven自帶的package打包功能,在打Jar包的時(shí)候,不會(huì)將該項(xiàng)目所依賴的Jar包一起打進(jìn)去,在使用“java -jar”命令啟動(dòng)項(xiàng)目時(shí)會(huì)報(bào)錯(cuò),項(xiàng)目無法正常啟動(dòng)。
這個(gè)時(shí)候,我們就可以考慮引用spring-boot-maven-plugin插件來為項(xiàng)目打Jar包。
spring-boot-maven-plugin:使用此插件在打Jar包時(shí)會(huì)引入依賴包
maven項(xiàng)目的pom.xml中,添加了下述插件,當(dāng)運(yùn)行“maven package”進(jìn)行打包時(shí),會(huì)打包成一個(gè)可以直接運(yùn)行的JAR文件,使用“java -jar”命令就可以直接運(yùn)行。

<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.5.5</version>
</plugin>
</plugins>
</build>一般的maven項(xiàng)目的打包命令,在打Jar包時(shí)不會(huì)把依賴的jar包也打包進(jìn)去,但是spring-boot-maven-plugin插件,會(huì)將依賴的jar包全部打包進(jìn)去。
例如下面這個(gè)使用spring-boot-maven-plugin插件打包生成的jar包的BOOT/INF/lib目錄下面就包含了所有依賴的jar包:

如果沒有使用spring-boot-maven-plugin插件打包的話,那么它的目錄結(jié)構(gòu)是:

對于使用上述spring-boot-maven-plugin插件打包生成的包,可直接使用下述命令啟動(dòng)項(xiàng)目
java -jar xxx.jar
特別說明
引入了spring-boot-maven-plugin插件后,在使用打包功能時(shí)會(huì)將mvn package 生成的 jar或者war 重新打包成可執(zhí)行文件,同時(shí)修改原文件名,增加.origin 后綴。
如果項(xiàng)目需要打包為war包,則其實(shí)不需要引入該插件,maven原生自帶的package插件就已經(jīng)可以滿足。
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
springcloud檢索中間件?ElasticSearch?分布式場景的使用
單機(jī)的elasticsearch做數(shù)據(jù)存儲(chǔ),必然面臨兩個(gè)問題:海量數(shù)據(jù)存儲(chǔ)問題、單點(diǎn)故障問題,本文重點(diǎn)給大家介紹springcloud檢索中間件?ElasticSearch?分布式場景的運(yùn)用,感興趣的朋友跟隨小編一起看看吧2023-10-10
工廠方法模式_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理
這篇文章主要介紹了工廠方法模式_動(dòng)力節(jié)點(diǎn)Java學(xué)院整理的相關(guān)資料,需要的朋友可以參考下2017-08-08
SpringBoot項(xiàng)目如何把接口參數(shù)中的空白值替換為null值(推薦)
這篇文章主要介紹了SpringBoot項(xiàng)目如何把接口參數(shù)中的空白值替換為null值(推薦),本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01
Spring Kafka中@KafkaListener注解的參數(shù)與使用小結(jié)
@KafkaListener注解為開發(fā)者提供了一種聲明式的方式來定義消息監(jiān)聽器,本文主要介紹了Spring Kafka中@KafkaListener注解的參數(shù)與使用小結(jié),具有一定的參考價(jià)值,感興趣的可以了解一下2024-06-06
SpringBoot中yml多環(huán)境配置的3種方法
這篇文章主要給大家介紹了SpringBoot中yml多環(huán)境配置的3種方法,文中有詳細(xì)的代碼示例供大家參考,對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2023-10-10

