1. 程式人生 > >執行jar包找不到依賴包的解決方法

執行jar包找不到依賴包的解決方法

Java工程打成jar包,但第三方jar包並沒有包含在包中,當在命令列中執行jar包時,出現類找不到的異常,

解決辦法1:

將第三方jar包放到JRE的擴充套件類資料夾中(%JAVA_HOME%/jre/lib/ext),

解決方法2:

修改jar包的MANIFEST.MF檔案

詳細如下:

通過不斷地試驗,終於成功了!

1、新建資料夾test位於D盤;

2、將用到的所有第三方jar包放在資料夾lib下,再將lib放在test下;

3、匯出的java工程jar包a.jar也放在test下;

4、修改工程jar包META-INF資料夾下的MANIFEST.MF配置檔案:

     Manifest-Version: 1.0
     Main-Class: cn.golaxy.yqpt.client.main.GatherMain
     Class-Path: lib/soapmonitor-1.5.jar
       lib/spring-aop.jar

     寫明main函式的包路徑(注意:冒號後加一個空格)!

     在class-path後寫上引用到的所有jar包(注意:要分行寫,並不是說一行寫一個jar包,只要保證這一行不要太長就好,否則會出現Exception in thread "main" java.io.IOException: line too long 
        at java.util.jar.Attributes.read(Attributes.java:356) 
        at java.util.jar.Manifest.read(Manifest.java:167) 
        at java.util.jar.Manifest.<init>(Manifest.java:52) 
        at java.util.jar.JarFile.getManifest(JarFile.java:158)

異常,換行時前面加兩個空格,最後還有一個回車)!

5、將修改好的MANIFEST.MF檔案覆蓋掉原來的;

6、在命令列下執行jar包:java -jar a.jar。