Exception in thread “main“ java.lang.NoClassDefFoundError: xxx/xxx/xxx

打包好的jar,由于有多个依赖项,所以就直接将这些依赖项全打包到同一个jar中,准备用通过CMD来运行,结果出了个java.lang.NoClassDefFoundError异常,网上查资料,都说需要在manifest.mf中加上依赖项的引用关系,但是修改来修改去,依旧未能解决这个问题,都开始怀疑人生了…
可是就在这个时候有一篇文章大致意思是这样说的:
1.不要将依赖项和代码打包到一起
2.向打包好的jar中的manifest.mf文件,增加如下代码,并在 MANIFEST.MF 文件的最后敲两个空行:
Class-Path: libs/A.jar libs/B.jar
3.jar同级目录创建一个libs的目录,并将依赖项放到里面,也是 Class-Path 中 libs 的来源
4.再执行如下代码就OK了
java -jar xxx.jar

参考:
java 导出jar包,类里面用到了第三方jar包,不可用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值