IDEA里运行代码没问题but生成jar运行报java.lang.NoClassDefFoundError错误
问题描述
在IDEA中运行程序成功,但是通过maven的打包package生成jar包后调用报错如下:
1 |
|
搜索一圈发现是依赖的jar包没有打进去。
问题排查
1.首先排除没有添加依赖(检查pom.xml文件)是否有依赖缺失
如果是没有添加依赖IDEA里面运行程序都会跑不成功。如下图依赖没缺失
2.检查IDEA中Artfacts中的依赖
在Artfacts中发现没有依赖的slf4j
问题解决
Artfacts中添加依赖
在Project structure中选择左侧Artifacts,点击“+”号,弹出窗口中选择JAR–>From modules with dependencies。
配置包含main函数类和生成jar包的MF目录,配置完点击OK按钮就行。注意:MF文件目录不要用默认目录,使用默认,我的生成jar就出错了,无法运行。
配置完后点击“OK按钮”确认。
配置完毕后,需要编译,编译步骤如下图:
最后就可以到jar生成目录看到所生成的jar包了
生成的可执行jar在输出目录里。使用:java -jar *.jar命令执行jar包程序。
觉得不错的话,支持一根棒棒糖吧 ୧(๑•̀⌄•́๑)૭
wechat pay
alipay
IDEA里运行代码没问题but生成jar运行报java.lang.NoClassDefFoundError错误
http://yuting0907.github.io/posts/f74c061a.html