一个Java内部类引发的FindNoClass错误

        我用java写了一个web服务器,在本地tomcat上测试,没有问题,部署到服务器上,却出现了诡异的500错误。

       用Fiddler看了一下,一个Message类出现了FindNoClass Exception,但是明明我已经吧Message.class文件拷贝上去了,我又仔细查看了一下本地的WEBINF文件夹,发现有几个Messge$1.class和Messge$2.class文件被我遗漏了。我在网上一查,原来这是Message的内部类的生成文件,如果漏掉这几个文件,Message类的代码就不完整了。

       把这两个.class文件拷贝到服务器上,重新启动tomcat,500错误就消失了。

       看来Java的内部类的生成机制的确值得注意,尤其是部署java web项目,最保险的方式就是整体拷贝网站目录了,我这种图省事直接拷贝几个同名.class文件的方法是不可取的。

      

你可能感兴趣的:(一个Java内部类引发的FindNoClass错误)