今天给大家讲的是MyEclipse编程提示ClassNotFoundException错误的如何处理,对MyEclipse编程提示ClassNotFoundException错误的处理方法感兴趣的同学们就一起学习下具体方法吧!
MyEclipse编程提示ClassNotFoundException错误的处理方法
1、从这个异常字面意思很容易得出异常原因“类找不到”。那小编就针对这个原因总结以下几点:
1)java中唯一表示一个类:是包名+类名,所以在引用这个类的地方检查下"包名和类名"是否都正确。
2)如果引用的地方是对的,那这一步就应该检查下,包含的这个类的jar包和项目是否引用进来了。
3)上面这两步,如果出错的话,在编译时就会报错,但是在有些环境下就不会的。比如在android的xml布局中有时就不会报错的,而是运行时报错。
4)上面1、2两步没有问题的话,可是在运行时就报错。怎么办,确定在项目在打包时候已经把包含这个类的库打包进来了。
2、到这一步,要解决遇到一个实际问题。小编的java web项目每次运行时候都报这个错"org.apache.catalina.LifecycleException: Failed to start component",如下图所示:
3、在这简单看下,类找不到?进入主题"类找不到",若类找不到,应该在编译时就报错的,MyEclipse在检查项目时应该也会报错,可是却发现没有错误,如图所示:
4、奇怪,检查下依赖,发现相应的类库都导入进来了。
5、难道是版本问题,结果把错误往百度一粘,搜了下发现确实有人说是版本或包冲突问题;结果就检查依赖关系,让多数类库依赖同一版本的类库。
6、还是不行,一运行还是报重复的错。看到这里,有的用户应该会猜到是运行时报错了,那应该就是运行时找不到类库。若你是这么想那就对了一半,结果小编就检查tomcat这个项目下WEB-INF/lib目录,一看果然是空的。
7、为什么这个目录是空的,按理说在打包时候应该会把类库放到这个目录下面。所以小编就检查下了,这个pom里的打包配置,果然发现打包的时候有如下配置导致没有把jar库打包到这个目录下面,如下图所示:
8、至于这个是什么意思,简单理解就是打包的时候不包括项目下的jar库,这样就导致项目部署到tomcat上去的时候,一运行就报上面刚开始说的错。
快来学习学习MyEclipse编程提示ClassNotFoundException错误的处理教程吧,一定会帮到大家的。