使用Resin 3.0开发,很奇怪Eclipse在启动了remote debug,然后加断点的时候说我的类没有加行号。我找遍了选项,明明是加了行号的呀。甚至我在一个必定会走过的类前面加个log打出来,路照走了,居然在console不见log。百思不得其解,快崩溃之前。终于想起了临时目录。
Resin默认总是在WEB-INF下面生成work和tmp目录,是放jsp编译而成的类的。我把这两个目录删除了。一切正常,断点也可以加了。
原因: 应该是resin在判断类是否需要重新编译时有点问题,对于我jsp里面有使用到的类发生变化以后,调用它的jsp文件没有重新编译。导致类文件不更新,连带就出了一堆古怪的错误。
下次记住了,有问题,先删临时目录!