なぜこれが起こり始めたのかはわかりませんが、今日、久しぶりに Tomcat7 を使用しようとしましたが、アプリケーションにアクセスしようとすると、次のエラーがスローされます。
type Exception report
message Unable to compile class for JSP
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
An error occurred at line: -1 in the jsp file: null
Generated servlet error:
[javac] Compiling 1 source file
org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:130)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:293)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:353)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:370)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
javax.servlet.http.HttpServlet.service(HttpServlet.java:728) note The
full stack trace of the root cause is available in the Apache
Tomcat/7.0.39 logs.
Tomcat ログからの例外の詳細:
SEVERE: 例外: javac コンパイラが見つかりません。com.sun.tools.javac.Main がクラスパスにありません。おそらく JAVA_HOME は、org.apache.tools.ant.taskdefs.Javac.compile(Javac.java: 969) org.apache.tools.ant.taskdefs.Javac.execute(Javac.java:799) で org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:320) で org.apache.jasper.compiler .Compiler.compile(Compiler.java:370) at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:473) at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:190) at org. org.apache.jasper.servlet.JspServlet の apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)。
JAVA_HOME と JRE_HOME が正しく設定されています。また、jdk/bin もパスに含まれています。