引用问题,jar里有对应的类但是引用不到~

文章讲述了在Web.xml中遇到WebServlet类找不到的问题,原因是依赖的jar包scope为test。解决方法是将该依赖的scope改为compile。scope的作用解释了测试、运行时和编译时范围。作者分享个人经验以帮助其他遇到同样问题的菜鸟。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

(每天遇到的问题解决了,记录一下~欢迎指点)
问题:在这里插入图片描述
在Web.xml的中org.h2.server.web.WebServlet中的WebServlet类一直在报错,说找不到这个类,但是在引用jar包中可以找到WebServlet这个类。
原因:
在这里插入图片描述
里的WebServlet类是pom.xml里
在这里插入图片描述
这个依赖下载的jar包,但是这个依赖的《scope》是test,所以引用不到。
解决 (我个人是这么解决的):
第一步:
右击项目找打Open Module sttings在这里插入图片描述
第二步:
然后点击Project Sttings—>Modules—>Dependencies—>找到问题所在的包将Scope改为编译时
在这里插入图片描述
( 第五步点击下拉框以后是有选项的)
效果在这里插入图片描述
解决了!
说一下为什么scope是test的话就引不到.
《scope》的作用是表明改jar文件的适用的作用范围**(以下是他的作用范围)**

  • compile :默认范围,用于编译
    - provided:类似于编译,但支持你期待jdk或者容器提供,类似于classpath
    - runtime: 在执行时,需要使用
    - test: 用于test任务时使用
    - system: 需要外在提供相应得元素。通过systemPath来取得
    - systemPath: 仅用于范围为system。提供相应的路径
    - optional: 标注可选,当项目自身也是依赖时。用于连续依赖时使用
    (ps:我是一个菜鸟只是记录一下错误和解决方法。如果有人碰到了同样的问题希望可以帮助到你,如有不足欢迎指点。虚心向见到本文章的人请求,感谢~)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值