Java在制作jar包時(shí)引用第三方j(luò)ar包的方法
我用的是Eclipse打包,但在CMD窗口執(zhí)行的時(shí)候報(bào)“ActiveMQ.jar中沒(méi)有主清單屬性”錯(cuò)誤。
在網(wǎng)上搜了下,這個(gè)與MANIFEST.MF文件有關(guān),該文件沒(méi)有定義MAIN方法所在類(lèi)的路徑,利用好壓打開(kāi)jar包,果然如此。里面只有一行
Manifest-Version: 1.0
需添加Main-Class。在本例中,添加如下:
Main-Class: com.luoluo.TestUse.activemq.ActiveMQStateMain
上面,有幾點(diǎn)需要注意:
1. Main-Class:和com.luoluo.TestUse.activemq.ActiveMQStateMain中間必須有個(gè)空格,切記。
2. com.luoluo.TestUse.activemq是該類(lèi)的包名,ActiveMQStateMain是main方法所在的類(lèi)名,注意:后面不用加上.java或.class。
3. 如果不引用第三方包,需回車(chē)讓光標(biāo)到下一行。不然還是會(huì)報(bào)“ActiveMQ.jar中沒(méi)有主清單屬性”錯(cuò)誤。如果引用了第三方包,在Class-Path后面回車(chē),總之,在指定了相關(guān)的參數(shù)后,均需要回車(chē)讓光標(biāo)到下一行。
上面的只是定義了主類(lèi),如果引用了第三方包,則會(huì)報(bào)以下錯(cuò)誤:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/activemq/broker/jmx/BrokerViewMBean
這時(shí),需在MANIFEST.MF文件中定義Class-Path。在本例中,添加如下:
Class-Path: lib/activemq-all-5.12.1.jar
注意:Class-Path和lib/activemq-all-5.12.1.jar之間也同樣需要個(gè)空格。
同時(shí),在jar包的同層目錄下,新建一個(gè)lib文件夾,將activemq-all-5.12.1.jar copy到里面去。
譬如,在本例中,jar包是在C:\Users\Victor\Desktop下,則需在C:\Users\Victor\Desktop目錄下新建一個(gè)lib文件夾,將相應(yīng)的第三包放里面去。
前者是打包的jar包,后者是lib文件夾,里面放的是第三方j(luò)ar包。
最后,MANIFEST.MF文件中的內(nèi)容如下:
最后執(zhí)行的結(jié)果如下:
以上內(nèi)容給大家分享的Java在制作jar包時(shí)引用第三方j(luò)ar包的方法,希望大家喜歡。
相關(guān)文章
IntelliJ IDEA使用SVN分支的簡(jiǎn)單介紹
今天小編就為大家分享一篇關(guān)于IntelliJ IDEA使用SVN分支的簡(jiǎn)單介紹,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-10-10認(rèn)識(shí)Java底層操作系統(tǒng)與并發(fā)基礎(chǔ)
這篇文章主要介紹了認(rèn)識(shí)Java底層操作系統(tǒng)與并發(fā)基礎(chǔ),文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下2022-07-07Spring Boot文件上傳簡(jiǎn)單實(shí)例代碼
在本篇文章里小編給大家分享的是關(guān)于Spring Boot 文件上傳簡(jiǎn)易教程以及相關(guān)知識(shí)點(diǎn),需要的朋友們參考下。2019-08-08MyBatis Plus 入門(mén)使用詳細(xì)教程
這篇文章主要介紹了MyBatis Plus 入門(mén)使用詳細(xì)教程,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-08-08SpringMVC將請(qǐng)求和響應(yīng)的數(shù)據(jù)轉(zhuǎn)換為JSON格式的幾種方式
這篇文章主要給大家介紹餓了SpringMVC將請(qǐng)求和響應(yīng)的數(shù)據(jù)轉(zhuǎn)換為JSON格式的幾種方式,文中通過(guò)代碼示例和圖文結(jié)合給大家介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下2023-11-11Jenkins自動(dòng)化部署springboot代碼實(shí)例
這篇文章主要介紹了Jenkins自動(dòng)化部署springboot代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04