java web项目包名不能为 com.java , java ,javax ...

今天做了个小Demo,随便取了个包名,就叫做java.filter

这里写图片描述

然后就报 ClassNotFoundException 说找不到我的servlet
然后查啊查,web.xml 配置没错 ,在看tomcat服务器的WEB-INF/lib下的classes也有我的servlet 的类文件啊!
然后在百度的一个角落有人说包名不能以com.java开头,所以改了个包名之后就完美运行了。

这里写图片描述

主要原因:
当写上com.java , java ,又或者 javax 之类的 包的时候 ,每当 jvm运行时,这些包下的类会被 引导类加载器所加载,而我们写的类应该是被应用类加载器所加载,所以在会导致 ClassNotFoundException 。

解决方法:
1. 改包名;
2. 自定义一个 ClassLoader 类加载器。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值