社区微信群开通啦,扫一扫抢先加入社区官方微信群
社区微信群
类找不到的原因会有很多,我就最近换了台电脑后,重新安装了eclipse等等等东西,然后导入近原来电脑上运行好好的maven项目后,报出java.lang.ClassNotFoundException的错误,于是直奔解决方法:
1).右键点击项目–选择Properties
选择Deployment Assembly,在右边点击Add按钮,在弹出的窗口中选择Java Build Path Entries。如下图所示:
2).点击Next,选择Maven Dependencies
3)点击Finish,然后可以看到已经把Maven Dependencies添加到Web应用结构中了
这个问题在于是没有将maven工程的jar包发布到部署的项目文件中。进入到 tomcat的部署路径.metadata.pluginsorg.eclipse.wst.server.coretmp0wtpwebapps下检查了一下,发现工程部署后在WEB-INF文件夹下没有生成lib目录,正常情况下,会生成lib目录并把工程的所有依赖jar包都部署到该目录下
1.首先在项目文件中没有添加相应的jar包,可以在maven dependencis文件夹中看是否有。如果没有,在pom文件添加依赖配置即可;如果有,还是出现问题转第二步
2.在maven的本地仓库中找到对应的jar包文件,双击试图打开它,如果出现报错说文件已经损坏或者不完整(我猜测可能是以前maven下载的时候因为网络的原因中途断掉没有下载完成,
下次pom在maven仓库引入本地jar包的时候不会再从官网下载,直接拿的是上次那个残缺文件,所以会出错),解决办法就是把这个jar包文件删除,重新update pom文件,让maven重新下载这个jar到本地仓库。
如果发现本地仓库的这个jar包打开也不会报错,那么转第三步。
3.最后的原因是没有将maven工程的jar包发布到部署的项目文件中(即:一开始提到的原因,上面又解决方法)。进入到tomcat的部署路径.metadata.pluginsorg.eclipse.wst.server.coretmp0wtpwebapps下检查了一下,发现工程部署后在WEB-INF文件夹下没有生成lib目录,正常情况下,会生成lib目录并把工程的所有依赖jar包都部署到该目录下。
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!