jsp+tomcat+eclispe,http status 500解决方法

问题描述:

在eclipse下建了一个简单的jsp测试文件,测试如下:http://localhost:8008/tomcat_test/HelloJsp.jsp(由于8080被oracle占了,因此在   Tomcat中改了一下文件server.xml,端口改为8008)

返回如下的信息:
HTTP   Status   500   -  
root   cause  
Unable   to   find   a   javac   compiler;
com.sun.tools.javac.Main   is   not   on   the   classpath.
Perhaps   JAVA_HOME   does   not   point   to   the   JDK
org.apache.tools.ant.taskdefs.compilers.CompilerAdapterFactory.getCompiler(CompilerAdapterFactory.java:106)
org.apache.tools.ant.taskdefs.Javac.compile(Javac.java:935)
org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:764)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:382)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:472)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:451)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:295)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236) 

问题产生原因:

安装tomcat的时候指定了jre的路径,导致tomcat_home, java_home都已经添加到了环境变量里,但启动jsp的时候却出现了以下的异常:
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK
产生的原因是java.home指到$JAVA_HOME/jre下了,而其lib下的tools.jar跟$JAVA_HOME/lib/tools.jar不一样,编译jsp的时候需要用到后者.

问题解决方法:

在tomcat控制台(双击tomcate5w.exe)java选项-〉java virtual machine
设置为%java_home%/jre/bin/server/jvm.dll
tomcat控制台java选项-〉Java classpath:
%tomcat_home%/bin/bootstrap.jar;%java_home%/lib/tools.jar
注:%java_home%、%tomcat_home分别指jdk、tomcat的安装根目录。

简单的说:在Java classpath添加
;%java_home%/lib/tools.jar即可!!

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值