jar包運(yùn)行時(shí)提示jar中沒(méi)有主清單屬性的解決
jar包運(yùn)行時(shí)提示jar中沒(méi)有主清單屬性

解決辦法
在pom文件中添加
<build>
<!--打包成jar包時(shí)的名字-->
<finalName>cloud-provider-payment8002</finalName>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
之后執(zhí)行mvn install,編譯,打包,此時(shí)再執(zhí)行java -jar就可以正常啟動(dòng)程序了
運(yùn)行jar包報(bào)“XXX中沒(méi)有主清單屬性”原因及分析
最近寫(xiě)了一個(gè)博客采集系統(tǒng),用的是普通maven項(xiàng)目中的main方法作為啟動(dòng)項(xiàng),打完jar包在centos7上運(yùn)行時(shí)報(bào)錯(cuò),查找資料改正,做一些必要的筆記,一來(lái)是對(duì)自己學(xué)習(xí)的知識(shí)的鞏固,二來(lái)對(duì)有同樣問(wèn)題的人有參考作用
報(bào)錯(cuò)原因
打包后的jar文件中的MANIFEST.MF缺少項(xiàng)目啟動(dòng)項(xiàng),即沒(méi)有Main-Class,如下:


解決方案
1、指定MANIFEST.MF路徑
項(xiàng)目打包前:
第一步 file–>project structure 彈框后選中Atifacts—> + ---->jar---->from module with dependenceis
第二步 選擇一個(gè)Main Class,然后指定META-INF/MANIFEST.MF的路徑為src下(注意不要放到main/java目錄下,否則打成的jar中META-INF/MANIFEST.MF不含有Main-Class信息)


如果這個(gè)方案不行,那就很有可能是另一個(gè)原因
2、項(xiàng)目pom.xml文件中添加插件spring-boot-maven-plugin

3、修改后重新生成jar包
結(jié)果如下:

相關(guān)常用命令匯總
在linux下啟動(dòng)或關(guān)閉jar包服務(wù)
啟動(dòng):進(jìn)入到j(luò)ar包對(duì)應(yīng)的文件夾,執(zhí)行 nohup java -jar xxx.jar & 命令
關(guān)閉:
- 先查出對(duì)應(yīng)的PID:執(zhí)行命令
ps -aux - kill命令關(guān)閉對(duì)應(yīng)的PID:執(zhí)行命令
kill對(duì)應(yīng)的jar包的PID
實(shí)時(shí)查看日志命令:進(jìn)入到對(duì)應(yīng)的日志目錄下面,執(zhí)行 tail -f xx.log 命令,停止退出,執(zhí)行ctrl+c
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
SpringBoot數(shù)據(jù)訪問(wèn)的實(shí)現(xiàn)
本文主要介紹了SpringBoot數(shù)據(jù)訪問(wèn)的實(shí)現(xiàn),引入各種xxxTemplate,xxxRepository來(lái)簡(jiǎn)化我們對(duì)數(shù)據(jù)訪問(wèn)層的操作,感興趣的可以了解一下2023-11-11
從log4j切換到logback后項(xiàng)目無(wú)法啟動(dòng)的問(wèn)題及解決方法
這篇文章主要介紹了從log4j切換到logback后項(xiàng)目無(wú)法啟動(dòng)的問(wèn)題及解決方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-01-01
Java JSch遠(yuǎn)程執(zhí)行Shell命令的方法
本文主要介紹了Java JSch遠(yuǎn)程執(zhí)行Shell命令,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02
在?Spring?Boot?中使用?Quartz?調(diào)度作業(yè)的示例詳解
這篇文章主要介紹了在?Spring?Boot?中使用?Quartz?調(diào)度作業(yè)的示例詳解,在本文中,我們將看看如何使用Quartz框架來(lái)調(diào)度任務(wù),Quartz支持在特定時(shí)間運(yùn)行作業(yè)、重復(fù)作業(yè)執(zhí)行、將作業(yè)存儲(chǔ)在數(shù)據(jù)庫(kù)中以及Spring集成,需要的朋友可以參考下2022-07-07
MyBatis 接收數(shù)據(jù)庫(kù)中沒(méi)有的字段的解決
這篇文章主要介紹了MyBatis 接收數(shù)據(jù)庫(kù)中沒(méi)有的字段的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03
MyBatis insert語(yǔ)句返回主鍵和selectKey標(biāo)簽方式
這篇文章主要介紹了MyBatis insert語(yǔ)句返回主鍵和selectKey標(biāo)簽方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-09-09

