使用IDEA和Maven出现Error:(4, 21) java: 程序包javax.servlet不存在问题

问题描述

百度的很多解决办法不好使太绝望了。(摔)
自己一定要弄清报错信息和自己使用场景去搜索,才能找到正确解答方式。
比如,我是使用Maven创建普通的javaweb项目。手动添加的webapp项目

如报错信息所示,确实就是程序包javax.servlet不存在的问题。但是我的包都导进来了呀并没报错,如下图


然后我捣鼓了Maven的clean和compile还有idea的清除缓存,都没用。当然也不是其它博客所说的设环境变量,把包手动复制到tomcat中。

解决

问题确实是缺少servlet包的问题,但是是编译后的文件中没有。如下图正常应该生成的目录结构

如果IDEA是设置的项目名:war exploded的发布方式,war包会在Target文件夹里生成。
如果war包的lib目录里没有javax.servlet按以下步骤查看下:
1、<packaging>war</packaging>是否设置打包方式(默认是jar包)
2、手动添加的webapp项目会有这样的问题

总结:注意编译后文件是否存在提示缺少的程序包。问题一定要带着使用情景去找。

posted @ 2021-10-21 19:01  Infinite_V胜  阅读(388)  评论(0)    收藏  举报