“org.apache.jasper.JasperException: Unable to compile class for JSP”

简介: http://www.matrix.org.cn/thread.shtml?topicId=24399&forumId=17 我也遇到了这样的问题. 跟踪了一下, 原来是java.home指到$JAVA_HOME/jre下了.

http://www.matrix.org.cn/thread.shtml?topicId=24399&forumId=17

我也遇到了这样的问题.

跟踪了一下, 原来是java.home指到$JAVA_HOME/jre下了.
而其lib下的 tools.jar跟$JAVA_HOME/lib/tools.jar不一样,
编译jsp的时候需要用到后者.
应此需要在启动 tomcat的时候让jvm知道tools.jar的位置就可以了.

注: java.home在运行的时候就会指向$JRE_HOME.
jdk 1.4.2_06-b03
jdk 1.5.0_05-b05
都会出现这种情况.

修改例子:
ant:
增 加
<property environment="env" />
然后在启动tomcat的时候 把<pathelement  location="${java.home}/lib/tools.jar" />
改为: <pathelement location="${env.JAVA_HOME}/lib/tools.jar" />
就可以了.

eclipse:
windows -> preference -> tomcat -> jvm settings -> boot classpath 中加入你的
JAVA_HOME/lib/tools.jar就可以了.

不知道sun这样做的原因是什么.

http://www.cnblogs.com/zhengyun_ustc/archive/2005/06/14/174348.html

 

[Java]Axis 需要高版本的 J2sdk: j2sdk-1_4_2_08

编写者

日期

关键词

郑昀 @ultrapower

2005-6-14

Java Web Service Axis Tomcat j2sdk

 

现象

按照 Install Axis 的详尽步骤依次安装了 axis-bin-1_2 Tomcat 5.0 ,也按照要求复制相应的 lib 文件到 Tomcat 目录下。

但是,当重新启动 Tomcat 后,浏览 http://localhost:8080/axis/ , 却得到了如下错误“ org.apache.jasper.JasperException: Unable to compile class for JSP ”,如下表所示:

错误页面提示:

HTTP Status 500 -

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: Unable to compile class for JSP

 

No Java compiler was found to compile the generated source for the JSP. 

This can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK 

to the common/lib directory of the Tomcat server, followed by a Tomcat restart. 

If using an alternate Java compiler, please check its installation and access path.

 

          

org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:83)

          

org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:315)

          

org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:406)

          

org.apache.jasper.compiler.Compiler.compile(Compiler.java:463)

          

org.apache.jasper.compiler.Compiler.compile(Compiler.java:442)

          

org.apache.jasper.compiler.Compiler.compile(Compiler.java:430)

          

org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:511)

          

org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:274)

          

org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)

          

org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)

          

javax.servlet.http.HttpServlet.service(HttpServlet.java:810)

note The full stack trace of the root cause is available in the Apache Tomcat/5.0.25 logs.

 

反复调整什么系统变量,都没有用。在 GooglGroup 上 查询,也没有解决办法。

解决办法

原先安装的是 j2sdk-1_4_1_02-windows-i586

最开始安装的是 j2sdk-1_4_1_02-windows-i586.exe , 看页面的提示,就把 tools.jar 复制到 tomcat 目录下,还是不行。

最终安装了 j2sdk-1_4_2_08-windows-i586-p.exe

把原来的 j2sdk 卸载,安装了最新的 j2sdk-1_4_2_08-windows-i586-p.exe 。并没有设置什么 AXIS_HOME AXIS_LIB 等 系统变量,只要把这个版本的 D:/j2sdk1.4.2_08/lib/Tools.jar 复制到 D:/Tomcat 5.0/common/lib 下, 重启动 Tomcat ,就可以浏览 Axis 了。

并且以前发布的 web service ,也可以正常 浏览了。

目录
相关文章
无法为JSP编译类:无法解析类型java.util.Map $ Entry从所需的.class文件间接引用它
无法为JSP编译类:无法解析类型java.util.Map $ Entry从所需的.class文件间接引用它
|
Java Maven Windows
解决 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile
解决 Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.7.0:compile
2017 0
|
Java Maven
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.10.1:compile (default-compil
maven-compliler-plugin版本与maven版本不一致,Maven版本太低或maven-compiler-plugin版本过高
3496 0
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.10.1:compile (default-compil
|
Java 应用服务中间件
寻找 IDEA 编译 JSP 生成的 class 文件
启动 Tomcat 时,日志信息中会显示路径,进入该目录下的 work 目录即可找到 JSP 编译后的 class 文件,如果日志信息乱码可查看启动 Tomcat 日志乱码问题。
寻找 IDEA 编译 JSP 生成的 class 文件
|
SQL 分布式计算 Java
Apache Hive-1.2.1 Manual Patch and Compile
说明: 由于之前使用CDH5.4.8,其Hive版本为1.1.0,其业务的脚本和jar也在此版本开发,所以有很多依赖性,兼容性等等。然后当我们计划将CDH5.4.8 Job迁移至AliYun EMR平台上,发现hive-1.1.0-cdh5.4.8与该平台的Apache Hadoop2.7.2
3656 0
|
Java Apache Maven
Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile)
完整的错误信息: [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.3:compile (default-compile) on project xinghe-interaction: ...
2612 0
|
Java
HTTP Status 500 - Unable to compile class for JSP:Syntax error on token "=", @ expected
版权声明:本文为 testcs_dn(微wx笑) 原创文章,非商用自由转载-保持署名-注明出处,谢谢。 https://blog.csdn.net/testcs_dn/article/details/43706309 jsp页面中使用取静态字段的值,报HTTP Status 500 - Unable to compile class for JSP:Syntax error on token “=”, @ expected错误。
773 0
|
Java
HTTP Status 500 - Unable to compile class for JSP:Syntax error on token &quot;=&quot;, @ expected
jsp页面中使用取静态字段的值,报HTTP Status 500 - Unable to compile class for JSP:Syntax error on token “=”, @ expected错误。
984 0

推荐镜像

更多