原来不是因为缺少jar包引起的

今天仿照尚学堂的shopping项目写了个开头,就出现了错误:


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

某类不可以被引用(这里把日志翻译了一下)
Stacktrace:
    org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:92)
    org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:330)
    org.apache.jasper.compiler.JDTCompiler.generateClass(JDTCompiler.java:439)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:334)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:312)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:299)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:586)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:342)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:267)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

开始以为是因为少jar引起的,后来把和shopping示例项目相同的jar包都copy过来,重新启动还是不行。

后来看到一篇文章说他移植的时候也遇到了这个问题,然后我又重新检查了一下编译class的路径,才发现WEB-INF下面没有classes文件夹,当然也就没有将编译的类放到这个文件夹底下。

解决方法:

       在WEB-INF底下建classes文件夹,然后在properties中设置如附件所示

分析原因:

      很多问题其实都可以从源头找到问题,就比如这个问题。其实最终都是读的class文件。

      

猜你喜欢

转载自xiaoshang-2008-126-com.iteye.com/blog/1844342