java -jar 找不到依赖包_运行jar包找不到依赖包的解决方法

  • Post author:
  • Post category:java

将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.(Manifest.java:52)

at java.util.jar.JarFile.getManifest(JarFile.java:158)

异常,换行时前面加两个空格,最后还有一个回车)!

5、将修改好的MANIFEST.MF文件覆盖掉原来的;

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


版权声明:本文为weixin_28981373原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。