java.lang.UnsupportedClassVersionError的错误解决

最近一个程序,居然在单位可以运行(JDK 1。5版本,TOMCAT 5.08),但到家里就运行不了,跑TOMCAT的例子可以,
但一跑该应用就说HTTP 4。04错误,觉得奇怪,于是找TOMCAT的log,发现
java.lang.UnsupportedClassVersionError,呵呵,那就明白了,原来自己家里的机器,有jdk 1.4,1.5两个版本,虽然eclipse里指定JDK 1。5来编译,
但环境变量里的java_home还是1.4版本的,于是一改回来,就可以运行了。
另外在其他论坛里看到有这样的问题,顺便摘录下来


在运行TOMCAT5.0时候由出现了如下的错误:
2005-11-17 19:38:47 StandardWrapperValve[action]: Servlet.service() for servlet action threw exception
org.apache.jasper.JasperException: Unable to compile class for JSP

Generated servlet error:
C:\application\Tomcat 5.0\work\Catalina\localhost\mlinkweb\org\apache\jsp\layouts\layout_005findex_jsp.java:7: cannot access java.lang.Object


Generated servlet error:
bad class file: C:\application\Java\jdk1.5.0\jre\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 layout_005findex_jsp extends org.apache.jasper.runtime.HttpJspBase
             ^
1 error


最后在SUN的JAVA论坛里面找到了答案,只要将JDK1.5的LIB下面的TOOLS.JAR覆盖TOMCAT5.0目录/common/lib下面的tools.jar,然后重启TOMCAT5.0就可以了

你可能感兴趣的:(java,jdk,tomcat,jsp,servlet)