org.apache.jasper.JasperException: Unable to compile class for JSPAn error occurred at line: -1 in the jsp file: nullGenerated servlet error:
    [javac] Compiling 1 source fileC:\Program Files\Apache Software Foundation\Tomcat 5.0\work\Catalina\localhost\jsp-examples\org\apache\jsp\dates\hi_jsp.java:7: cannot access java.lang.Object
bad class file: C:\Program Files\Java\jre1.5.0_06\lib\rt.jar(java/lang/Object.class)
class file has wrong version 49.0, should be 48.0
Please remove or make sure it appears in the correct subdirectory of the classpath.
public final class hi_jsp extends org.apache.jasper.runtime.HttpJspBase
             ^
1 error
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:127)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:351)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:415)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:458)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:552)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:291)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
刚开始学JSP,环境是jdk+tomcat
是不是JAVA版本的问题,该如何解决呢,请高手指点!

解决方案 »

  1.   

    bad class file: C:\Program Files\Java\jre1.5.0_06\lib\rt.jar(java/lang/Object.class)
    class file has wrong version 49.0, should be 48.0
    ============================================================
    提示比较明显了,你换成把jdk换成1.4的试一下。
      

  2.   

    代码很简单,几句话,就是个例子<html>
    <head>
    <title>First Page</title>
    </head>
    <body>
    <h3>Today is:
    <%= new java.util.Date() %>
    </h3>
    </body>
    </html>怎么把JDK换成1.4的呢?
    我是先装的JDK1.4,我觉得是在线升级成1.5的了,刚才装的TOMCAT5.0.
    现在在CMD下看,JDK版本是1.4,但是好像每次启动TOMCAT后,自动选择的JDK是1.5的
      

  3.   

    安装TOMCAT后的例子都可以正常打开的
      

  4.   

    CMD下看,jdk是1.4很有可能是因为你在环境变量的classpath里加的时jdk1.4的路径,其实,tomcat5.0以上是要用jdk1.5的,1.4反而不好。
    你这样,把环境变量改掉,你先去C:\Program Files\Java\jre1.5.0_06\lib\rt.jar这个目录下找是不是存在这个rt.jar,这个其实就是所有jdk的run time,支持jdk1.5的所有的java基本方法,所以你要把这个路径添加到classpath中去,然后把以前那个jdk1.4的.jar的路径从classpath中删除。
      

  5.   

    先改这些,重起tomcat试试看,如果不行,把tomcat打开,在tomcat的configur下选择要使用的jvm,请用jdk1.5,也就是你的那个放jdk1.5的路径
      

  6.   

    HTTP Status 404 - /sample.jsp--------------------------------------------------------------------------------type Status reportmessage /sample.jspdescription The requested resource (/sample.jsp) is not available.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.16感谢 Michael_javavb() 
    我再次设置后,还是不行啊,一直出现上面的页面!
      

  7.   

    不行,你把jdk都删掉,重新装上1.4,tomcat也重找一下jdk的路径
      

  8.   

    你tomcat指向是是jre,应该指向jdk.要么就是你环境变量有问题.我觉得和jdk版本没问题.
      

  9.   

    无奈了,我把JDK和TOMCAT都重装了,变量按照常规思路设置后(JDK设置CLASSPATH、JAVA_HOME、PATH,TOMCAT设置TOMCAT_HOME),http://localhost:8080 页面显示正常,应该可以证明是装对了吧。但是把一个JSP文件放在WEBAPPS下,仍然显示HTTP Status 404 - /sample.jsp--------------------------------------------------------------------------------type Status reportmessage /sample.jspdescription The requested resource (/sample.jsp) is not available.
    --------------------------------------------------------------------------------Apache Tomcat/5.0.16
      

  10.   

    重起Tomcat最差重起热boot一下 应该就自动解决这个问题了