欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

運行Jar包出現提示xxx中沒有主清單屬性報錯問題解決方法

 更新時間:2023年08月21日 11:49:25   作者:下課后我要去放牛  
這篇文章主要介紹了運行Jar包出現:xxx中沒有主清單屬性報錯,當出現報錯:xxx中沒有主清單屬性,解決方法也很簡單,在pom.xml配置中,加上相應配置即可,需要的朋友可以參考下

推薦閱讀:

jar包運行時提示jar中沒有主清單屬性的解決

運行Jar包出現:xxx中沒有主清單屬性報錯

1、項目打好jar包時,使用命令運行jar包:

java -jar xxx.jar

出現報錯:xxx中沒有主清單屬性

解決辦法:親測有用

在pom.xml配置中,加上以下配置:

<build>
        <!--打包成jar包時的名字-->
        <finalName>xxxTest</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>

再打包運行時,成功輸出日志

解決運行jar包時報錯“沒有主清單屬性“以及丟失依賴jar包的問題

問題描述

原因描述

Maven 打包時默認情況下不會將第三方依賴打包進去是因為 Maven 遵循了一種依賴管理的原則,即將項目與其依賴庫(第三方庫)分開管理。這樣做有以下幾個優(yōu)點:
1.減小打包體積:如果所有的第三方依賴都包含在打包文件中,將會導致最終的構建產物巨大,增加部署和傳輸的成本。而只打包項目本身的代碼和資源,可以顯著減小生成的可執(zhí)行文件的大小。
2.依賴共享與復用:Maven 使用中央倉庫來存儲和管理各種開源庫,這些庫可以被多個項目共享和復用。通過在項目的 pom.xml 文件中聲明依賴,Maven 可以自動下載所需的庫文件,確保項目構建所依賴的庫的版本一致性,并在構建過程中自動解決依賴關系。
3.簡化維護和升級:由于第三方依賴獨立于項目進行管理,并且通過 Maven 的依賴管理機制進行引入和更新,當需要升級某個第三方庫的版本時,只需修改項目的 pom.xml 文件中的相應依賴版本號,而無需手動替換庫文件或修改代碼。
盡管 Maven 默認不會將第三方依賴打包進可執(zhí)行文件中,但你仍然可以通過 Maven 的插件來實現將依賴打包到可執(zhí)行文件中的需求。例如,通過 Maven Shade 插件或者SpringBoot的Maven插件可以創(chuàng)建一個可執(zhí)行 JAR 文件,并將所有依賴庫打包為一個可執(zhí)行的大 JAR 文件

在一些情況下,即使沒有在 Maven 插件配置中顯式指定主類,在打包時也可以成功生成包含主清單屬性的可執(zhí)行 JAR 文件。這是因為在某些情況下,Maven 可以自動檢測到項目的入口點,并將其作為默認的主類。
然而,這種自動檢測主類的行為并不是所有情況下都適用。具體是否需要顯式指定主類取決于你的項目結構和依賴關系。如果 Maven 無法自動檢測到主類或者檢測到的主類不是你希望的,最常見的就是你的引導類名不規(guī)范導致如"Starter"(應該是StarterApplication),就會出現"沒有主清單屬性"的錯誤。
因此,為了保證項目的可靠性和一致性,建議在 Maven 插件配置中顯式指定主類。這樣可以避免潛在的問題,并確保打包后的可執(zhí)行 JAR 文件始終具有正確的主清單屬性。

解決方案:

1:規(guī)范書寫

2 明確聲明主類名以及打包方式

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
            <fork>true</fork>
                <mainClass>引導類全類名</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

到此這篇關于運行Jar包出現:xxx中沒有主清單屬性報錯的文章就介紹到這了,更多相關xxx中沒有主清單屬性報錯內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • IDEA無法使用終端terminal問題的解決方案

    IDEA無法使用終端terminal問題的解決方案

    這篇文章主要介紹了IDEA無法使用終端terminal問題的解決方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 深入理解LinkedHashSet集合的底層機制

    深入理解LinkedHashSet集合的底層機制

    這篇文章主要介紹了LinkedHashSet的底層機制詳解,LinkedHashSet根據元素的hashCode值來決定元素的存儲位置,同時使用鏈表維護元素的次序,?這使得元素看起來是以插入順序保存的,需要的朋友可以參考下
    2023-10-10
  • SpringBoot Java后端實現okhttp3超時設置的方法實例

    SpringBoot Java后端實現okhttp3超時設置的方法實例

    Okhttp的使用沒有httpClient廣泛,網上關于Okhttp設置代理的方法很少,下面這篇文章主要給大家介紹了關于SpringBoot Java后端實現okhttp3超時設置的相關資料,需要的朋友可以參考下
    2021-10-10
  • Java中Objects.equals踩坑記錄

    Java中Objects.equals踩坑記錄

    最近在工作中發(fā)現一個問題,覺著還是挺有必要記錄下的,這篇文章主要給大家介紹了關于Java中Objects.equals踩坑的相關資料,需要的朋友可以參考下
    2022-03-03
  • Java JDBC導致的反序列化攻擊原理解析

    Java JDBC導致的反序列化攻擊原理解析

    這篇文章主要介紹了Java JDBC導致的反序列化攻擊原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Linux中使用shell腳本管理Java應用程序

    Linux中使用shell腳本管理Java應用程序

    在日常開發(fā)和運維工作中,管理基于Java的應用程序是一項基礎且頻繁的任務,本文將通過一個示例腳本,展示如何利用Shell腳本簡化這一流程,實現Java應用的一鍵式啟動、停止與重啟操作,本腳本不僅提升了工作效率,還確保了操作的標準化與可靠性
    2024-06-06
  • 詳談jvm線程棧空間內存分配位置

    詳談jvm線程棧空間內存分配位置

    這篇文章主要介紹了jvm線程??臻g內存分配位置,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • 一文詳解Java攔截器與過濾器的使用

    一文詳解Java攔截器與過濾器的使用

    這篇文章主要為大家詳細介紹了Java中攔截器與過濾器的使用與區(qū)別,文中的示例代碼講解詳細,對我們學習有一定參考價值,需要的可以參考一下
    2022-04-04
  • 淺談MyBatis 如何執(zhí)行一條 SQL語句

    淺談MyBatis 如何執(zhí)行一條 SQL語句

    Mybatis 是 Java 開發(fā)中比較常用的 ORM 框架。在日常工作中,我們都是直接通過 Spring Boot 自動配置,并直接使用,但是卻不知道 Mybatis 是如何執(zhí)行一條 SQL 語句的,下面就一起講解一下
    2021-05-05
  • Java算法實現調整數組順序使奇數位于偶數之前的講解

    Java算法實現調整數組順序使奇數位于偶數之前的講解

    今天小編就為大家分享一篇關于Java算法實現調整數組順序使奇數位于偶數之前的講解,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-01-01

最新評論