ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

时间:2024-03-25 15:07:08

错误:

导入别人的ssh项目后出现java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误,

错误发生条件:

别人是用myeclipse10版本,我是用eclipse4.6.0版本运行他的ssh项目,并且他的jar是放在lib目录下的文件夹,也就是说jar包不放在

lib根目录下,而是放在lib目录下的文件夹里。如图:

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

错误发生原因:

在myeclipse中,会自动扫描lib目录下的所有文件夹的所有jar包,然后编译和运行程序都可以。

 而在eclipse中,必须将jar包放在lib目录下,这样程序在运行的时候才能找到jar包,不然即便用Java Build Path (Java Build Path是我们编译需要的包)

导入过的包,没放到lib下,运行项目时会出现ClassNotFoundException的异常.

这里涉及到:eclipse中JavaBuild Path导入包和把包复制到lib下是有区别的,具体可以参考:Eclipse下把jar包放到工程lib下和通过buildpath加载有什么不同

 问题解决:

方法一:用myeclipse运行项目

方法二:如果习惯用eclipse,那么就采取Eclipse中用User Library管理jar包

具体步骤(以下内容转自:http://www.cnblogs.com/littlecharacter/archive/2016/06/01/5549059.html):

目的:为了更方便的管理jar包,而不是一股脑儿的将引用的jar包全部放在Web App Library下。

管理和配置:

第一步:管理

新建Library并引入项目中

右键项目->Build Path->Configure Build Path->Add Library->User Library->User Libraries->New->命名->Add External JARs->选jar包->ok,finish,apply

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

第二步:装配配置

自定义Library不会在项目发布时自动加载到lib下面,会导致启动报错

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

解决方法:Web Deployment Assembly(Web部署装配)

右键项目->Properties->Deployment Assembly->Add->Java Build Path Entries->选中自定义Library,finish,apply,ok

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

再次启动,ok

ssh项目java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade错误

---------------------------------------------------------------------------------------------------------------------------------------

以下可以忽略:

其他解决:

1.若项目的主人是用maven创建spring项目,

解决办法:
项目 —> 属性 -> Deployment Assembly -> Add -> Java Build Path Entries -> 选择Maven Dependencies -> Finish -> OK
把对应的Maven依赖包也发布到tomcat,调试时会自动把那些jar发布到指定目录下,tomcat也能找到那些jar了。
参考:
2.第二种情况:
缺少spring-web.jar包