问题:

项目在本地没有报错,在服务器部署的时候报java.lang.NoClassDefFoundError异常。

发生此问题的时候,在本地的开发工具也会有此异常的警告(开发工具没有关闭警告提示)。

原因:

1.JVM编译时能找到合适的类,运行时不能找到导致错误。例如运行时调用某个类的方法或者访问这个类的静态成员的时,发现这个类不可用,此时Java虚拟机就会抛出NoClassDefFoundError错误。

与ClassNotFoundException的不同在于:此错误发生在运行时需要加载对应的类不成功,而不是编译时发生。很多Java开发者很容易在这里把这两个错误搞混。

总结:NoClassDefFoundError发生在编译时对应的类可用,而运行时在Java的classpath路径中,对应的类不可用导致的错误

解决方案:

1.maven项目:检查项目中的jar包是否和编译时的jar包一样(版本是否一致),下载相关jar包。

2.非maven项目:检查项目中的jar包是否和编译时的jar包一样(版本是否一致),非maven项目的jar不会自动下载,需手动下载;若存在多个项目之间互相调用时,确保每个项目中都有相关的jar包,尤其是在不使用maven控制的微服务项目中常发生。

相关知识点:

1.JVM加载;

2.maven,微服务;

java.lang.NoClassDefFoundError异常原因分析和解决方案相关推荐

  1. java实训遇到问题解决_「instantiationexception」关于java出现 java.lang.InstantiationException异常的分析与解决方案 - seo实验室...

    instantiationexception java.lang.instantiationexception 是指不能实例化某个对象,一般在我们使用java反射机制去创建某个对象的时候实例化到了一个 ...

  2. 已解决java.lang.NoClassDefFoundError异常的正确解决方法,亲测有效!!!

    已解决java.lang.NoClassDefFoundError异常的正确解决方法,亲测有效!!! 文章目录 报错问题 报错原因 解决方法 NoClassDefFoundError解决示例 福利 报 ...

  3. java.lang.NullPointerException异常原因及解决

    java.lang.NullPointerException异常原因是因为创建了一个引用类型的变量却没有指向任何对象而又去通过这个引用类型变量加点的形式去访问非静态的方法及属性. 给出三种情况, 第一 ...

  4. java.lang.NoClassDefFoundError异常解决

    java.lang.NoClassDefFoundError异常解决 这个异常通俗的解释就是编译通过,能找到对应的依赖,但是运行时候却找不到相应的类.只会在运行时出现这个异常,这种问题的调试和解决都涉 ...

  5. java.lang.IllegalStateException异常原因和解决

    1.出现该异常场景 Iterator.remove() 迭代删除 引发 2.问题定位分析 1. Iterator.remove() 迭代删除 引发 重复 remove 导致出现该异常 场景示例 @Te ...

  6. java.lang.IllegalThreadStateException异常原因解析

    小白今天开始正式涉足多线程和队列,拍手拍手,欢庆欢庆.... --------------------------------------------------------------------- ...

  7. 异常:java.lang.NoClassDefFoundError: org/springframework/expression/ParserContext

    异常:java.lang.NoClassDefFoundError: org/springframework/expression/ParserContext 解决方案:缺少spring-expres ...

  8. 手动更新jar包中的class文件,报java.lang.ClassNotFoundException或java.lang.NoClassDefFoundError问题记录

    1.问题描述   本地代码运行无问题,手动更新class文件到jar包,部署到服务器的tomcat上启动时无报错,但登录网站使用 对应功能 时,报 java.lang.ClassNotFoundExc ...

  9. java -jar 执行jar包出现 java.lang.NoClassDefFoundError

    http://www.cnblogs.com/xuzimian/p/7599304.html 我用idea工具将自己开发java程序打成一个可执行的jar包,当然用eclipse或者直接用jar命令行 ...

  10. java.lang.IllegalStateException异常:简单的分析和简单解决方案

    java.lang.IllegalStateException异常:简单的分析和简单解决方案 参考文章: (1)java.lang.IllegalStateException异常:简单的分析和简单解决 ...

最新文章

  1. Hadoop RPC机制的使用
  2. Spark Streaming 实战案例(四) Spark Streaming 缓存、Checkpoint机制
  3. 5-8 离散点检测(改进版无error)
  4. 哪个是python程序中与缩进有关的正确说法_关于Python程序中与“缩进”有关的说法中,以下选项中正确的是()。_学小易找答案...
  5. Dropbox - share your doc on the cloud
  6. 机器学习笔记(七):神经网络:表示
  7. 蓝桥杯第六届国赛JAVA真题----奇怪的数列
  8. 若你安全到家,来这儿报个平安吧
  9. Spring Cloud与微服务学习总结(10)——Spring Cloud 常见优化项的总结
  10. python 编程(关于twisted)
  11. Super Jumping! Jumping! Jumping! 最长上升子序列+DP
  12. 怎么把竖列中的数相加python_使用python将另一列的列和总和内容分组
  13. 订阅号做了77天,没有挣钱,但是收获很多。
  14. 邓俊辉算法训练营第三期(带完整课件)
  15. ConcurrentModificationException
  16. 基于Token的验证方式(JWT简笔)
  17. 【codeforces】【比赛题解】#960 CF Round #474 (Div. 1 + Div. 2, combined)
  18. 写论文时,Word文档修改保存后,文件越来越大的解决方法
  19. 猿创征文|【简单】微信公众号推送教程 ·可直接下载运行 ·超详细
  20. KeyDown,KeyPress 和KeyUp 之我谈

热门文章

  1. 教你如何将 优酷网等视频网站的视频外链时自动播放
  2. 汽车如何打蜡 汽车打蜡有什么要注意的地方
  3. input中加入图标实现搜索框
  4. 基于自适应决策算子的鲸鱼优化算法-附代码
  5. 【Android】模拟Android微信APK底部的TabHost选项卡
  6. 微信apk微信直接用手机默认浏览器打开 IOS跳转App Store(苹果商店)打开
  7. UFS Clk Gate介绍
  8. Ubuntu 下安装 Python 解释器
  9. 公益/广告-bloggerads广告是为了钱?[非推广文章哈]
  10. 信创云:打造自主可控云基础设施 | 厂商征集