今天用netBeans作开发,jsp的脚本中调用了自己写的一个类,结果运行时就发现这个页面会报错,说是类型解析错误,后来发现是忘了把这个类放到一个包里,突然就产生了疑惑,为什么这个类在默认包里面就不行呢?jsp文件在运行时,会自动解析成一个类,然后再进行编译,这个解析和编译是在一个独立的目录下的。
而我们自己写的servlet、bean和类都是在另一个目录下的。
如果大家都使用默认包的话,servlet和类都编译在一起,他们的访问倒是没有问题。jsp则和他们不是编译在一起的。
如果有了包,jsp就可以通过classpath来引用这些类;但没有包的话,默认的路径变成了jsp自己的路径,就产生了这样的问题。猜想是不是这样的原因,还请高手指正。