您当前的位置: 首页 >  Java

_waylau

暂无认证

  • 3浏览

    0关注

    275博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

解决Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/jetty/server/Handler

_waylau 发布时间:2018-12-20 00:16:36 ,浏览量:3

在使用maven-shade-plugin插件时,报个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/eclipse/jetty/server/Handler
        at com.waylau.lite.App.main(App.java:13)
Caused by: java.lang.ClassNotFoundException: org.eclipse.jetty.server.Handler
        at java.net.URLClassLoader.findClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
        at java.lang.ClassLoader.loadClass(Unknown Source)
        ... 1 more

这个错误,在eclispe里面右键允许应用是不会有的。但使用maven-shade-plugin插件打包为可执行的jar时出现了。

问题原因

仔细排查了pom.xml文件发现了问题:


	org.eclipse.jetty
	jetty-servlet
	${jetty.version}
	provided

在引用jetty-servlet时,scope设置为了provided,意味着打包时,这个依赖不会被打进去。 要想不报错,只要把这个依赖打包进去jar即可。

解决方法

修改如下解决:


	org.eclipse.jetty
	jetty-servlet
	${jetty.version}

源码
  • 源码可见 https://github.com/waylau/lite
  • 参考《Spring 5 开发大全》
关注
打赏
1651845987
查看更多评论
立即登录/注册

微信扫码登录

0.0381s