idea tomcat 找不到程序包_【问题解决】IDEA-Maven下Tomcat发布Web项目,遇到Jar包无法找到-阿里云开发者社区...

本文描述了在使用IDEA、Maven和Tomcat发布Web项目时遇到的Jar包找不到类的错误。具体表现为在项目发布后,SpringMVC依赖的文件上传Jar包未被正确加载。解决方案包括:删除并重新添加有问题的dependency,更新至1.3.2版本,以及确保将该Jar包放入Tomcat的lib目录中。作者推测问题可能源于Maven下载中断或特定版本的Jar包存在问题。文章最后鼓励读者遇到类似问题时尝试更换版本或检查部署步骤。
摘要由CSDN通过智能技术生成

这个错误坑了我半天百度谷歌上的解决方案差不多全部尝试了。

还是无法解决。后来是解决了。

问题是这样的

集成工具是:IDEA

Maven建了一个Web项目通过Tomcat发布了.

SpringMVC依赖了一个文件上传的Jar包。我用Maven添加进去的。

但是没起作用在项目用Tomcat发布之后(可以正常发布)用到那个Jar包时会出现找不到类的错误。

exception:

javax.servlet.ServletException: Servlet.init() for servlet springMvc threw exception

org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)

org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)

.........

root cause:

java.lang.NoClassDefFoundError: org/apache/commons/fileupload/FileItemFactory

java.lang.Class.getDeclaredConstructors0(Native Method)

java.lang.Class.privateGetDeclaredConstructors(Class.java:2404)

.........

root cause:

java.lang.ClassNotFoundException: org.apache.commons.fileupload.FileItemFactory

org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1714)

org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1559)

.........

意思是找不到org.apache.commons.fileupload.FileItemFactory这个路径下的jar

或者是jar不完全导致的

当时我用的版本是1.2.2.

pom.xml中添加的是这样的:

commons-fileupload

commons-fileupload

1.2.2

在项目中可以看到这个包的结构也就是成功导入了。

可是还是会出现这个问题。

我的解决办法是这样的:

首先删除这个包的dependency

commons-fileupload

commons-fileupload

1.2.2

保存

项目右键–>Maven–>Reimport .

然后再编辑pom.xml:

添加:

commons-fileupload

commons-fileupload

1.3.2

还有我估摸着这个1.2.2的版本有问题如果你其他的包出现了问题不妨换个版本试试

还有一件事要做

你需要把这个包从项目中put到tomcat中这个项目的lib中去这步很关键。

有的时候也有可能是这步的问题哦。

我这个问题估计是由于在maven down依赖的时候出现中断然后jar包里面的类不全导致的或者是1.2.2这个版本的包有问题。

然后重新发布OK。

其他的包出现无法找到的情况可以参考本篇哦。

希望能解决你的问题。

本文章由[谙忆]编写 所有权利保留。

欢迎转载分享是进步的源泉。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值