tomcat用的是5.5.20版本,JAVA编译器用的是自己安装的jdk1.5.0_11, tomcat配置的运行环境也是自己安装的jdk1.5.0_11自带的runtime包。。很无语,版本都一致了,为啥还会有这种错,对JAVA无语了,项目明天等着上线,在线等高手来解决了
严重: Servlet 抛出load()异常
java.lang.UnsupportedClassVersionError: Bad version number in .class file
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
at org.apache.catalina.loader.WebappClassLoader.findClassInternal(WebappClassLoader.java:1815)
at org.apache.catalina.loader.WebappClassLoader.findClass(WebappClassLoader.java:869)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1322)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1201)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at database.Database.getDataSource(Database.java:50)
        ........

解决方案 »

  1.   

    确定你运行的机子上只安装了一个JDK?感觉是编译和运行的JDK版本不一致。
      

  2.   

    也有可能你用到的第三方jar包是1.6编译的。都检查看看
      

  3.   

    请确认你的代码编译的时候的ide配置的版本是多少估计你使用eclipse自带的jdk 自己设置下吧
      

  4.   

    1、机器上已经没有jdk1.6的安装版本了,只有1.5.0_11的版本,是删除后重启再重新安装的  所以不用怀疑2、myeclipse的compiler level已经设置为1.5了,并且将myeclipse.ini的jvm也指定到自己安装的jdk目录下   了3、myeclipse的Jre system Library 已经指定自己安装的jre 1.5.0_11目录了。。4、tomcat也直接指定自己安装的jre 1.5.0_11运行环境了5  系统环境也已使用自己安装的JDK了,是不是这个JDK版本不行?麻烦各位看看
       java -version 后看到是这样的:
    C:\Documents and Settings\Administrator>java -version
    java version "1.5.0_11"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)
    Java HotSpot(TM) Client VM (build 1.5.0_11-b03, mixed mode, sharing)
    MyEclipse可以指定用自己安装的JDK进行编译吗? 高人指点下啊, 实在是彻底无语了!   
      

  5.   


    这个问题,要如何解决?  我了个去, 包都有问题, JAVA真个垃圾
      

  6.   

    刚刚找了个反编译软件对我的class文件进行了反编译,反编译软件提示我class文件版本是1.5的!
      

  7.   

    虽然我设置了Compiler compliance level为5.0,其实依然是再6.0的JRE下进行编译的。 
    打开Installed JREs,重新Add一个JRE,指定一个JRE路径,使用自己安装的JDK 5.0,也就是JRE 5的环境进行编译,
      

  8.   


    上面已经说了::3、myeclipse的Jre system Library 已经指定自己安装的jre 1.5.0_11目录了,并且将myeclipse.ini的jvm也指定到自己安装的jdk目录下

               
      

  9.   

    老大,你没有配置tomcat server的jdk版本,我晕死。
    这里不能发送截图,我怎么发给你呢?窗口--首选项--然后找到tomcat server --找到对应的jdk,然后指定路径就可以了。
      

  10.   


    我知你说的是tomcat5.x那里,上面不是说了吗? tomcat早就被设置成用本地安装的JDK了继续等大神啊  救命啊   !!!!!!!!!!!!!!!!1
      

  11.   

    还在纠结呢?找不到问题就把jdk升级下呗。
      

  12.   

    清空tomcat work folder,试一下
      

  13.   

    真的。别在纠结这种问题了。重新安装Jdk,重新安装部署tomcat,重新安装myeclipse,配置环境变量,全部完成之后,重启一下电脑,以防万一不起作用,然后保证可以。要是再不行,只能找大牛,把你的电脑重装系统。
      

  14.   

    楼主用的数据库是不是oracle? 查看一下oracle自带的jdk是不是1.5的,也有可能是oracle自带的jdk引起的版本冲突。
      

  15.   

    谢谢大家,问题在当天已解决!到官网查看连接池commons-dbcp文档,并改用Ant构建项目才发现问题,相当苦逼!
    是一个jar包引起的,该jar包要求运行在jdk1.6以上的环境,commons-dbcp-1.4.jar 必须运行在1.6以上1.5环境下用的是commons-dbcp-1.3.jar
    还是用Ant好,原生编译,原生报错,不掩藏不模糊!