首页 > 技术文章 > 在使用反射时,maven设置依赖范围引起的异常

or2- 2014-03-01 23:33 原文

背景是,运用annotation进行权限控制,将一个包下面的类。进行反射,然后判断类的annotation,根据annotation设置权限

 

问题来了,包下面有5个类,在反射时报了 javqx.servlet.ServletOutputStream 没找到。但是我奇怪。我编译运行都没有问题。为什么反射时找不到这个类,

并且只是 在方法里使用了这个类的方法,maven也明明引入了这个依赖,后来我判断是否是因为我的servlet设置的依赖范围引起的,

provided 这个是编译 ,测试 有效,一般容器自带servlet api及实现。所以一般maven里引用servlet都用这个

compile这个是编译,测试,运行,时有效

我开始设置成provided,报异常,改成compile 就问题解决了。我是的开发ide是IDEA,回头我要在ECLIPSE下实验一下,以前从来没遇到过这个问题,

推荐阅读