解决tomcat出现:java.lang.IllegalStateException:无输出目录问题

Cybill ·
更新时间:2024-09-20
· 1215 次阅读

目录

tomcat出现:java.lang.IllegalStateException:无输出目录

问题描述

原因分析

解决方案

总结

tomcat出现:java.lang.IllegalStateException:无输出目录 问题描述

tomcat分为安装版和解压缩版,解压缩版如果解压到安装盘,在浏览器中访问http://localhost:8080,可能会出现500错误

错误提示如下:


类型 异常报告
消息 java.lang.IllegalStateException: 无输出目录
描述 服务器遇到一个意外的情况,阻止它完成请求。

例外情况
org.apache.jasper.JasperException: java.lang.IllegalStateException: 无输出目录    
org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:605)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:436)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
根本原因。

java.lang.IllegalStateException: 无输出目录
org.apache.jasper.JspCompilationContext.createOutputDir(JspCompilationContext.java:697)
org.apache.jasper.JspCompilationContext.getOutputDir(JspCompilationContext.java:204)
org.apache.jasper.JspCompilationContext.getClassFileName(JspCompilationContext.java:545)
org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:468)
org.apache.jasper.compiler.Compiler.isOutDated(Compiler.java:434)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:598)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:400)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:385)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:329)
javax.servlet.http.HttpServlet.service(HttpServlet.java:741)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
):注意 主要问题的全部 stack 信息可以在 server logs 里查看

原因分析

tomcat目录没有被读写的权限,导致文件不能被编译到指定的工作目录中。

解决方案

找到tomcat目录,右键“属性—>安全—>编辑”,找到Users,将“完全控制”选项“允许”打钩,应用。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持软件开发网。



java.lang lang JAVA Tomcat 输出

需要 登录 后方可回复, 如果你还没有账号请 注册新账号