无法为JSP编译类

RAV*_*ADA 13 jsp

我在JSP项目中工作.在使用Netbeans和Tomcat 6服务器运行项目时,我得到以下异常,

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

An error occurred at line: 8 in the generated java file
Only a type can be imported.  com.TransportPortal.MyFunctions resolves to a package

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:349)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:327)
    org.apache.jasper.compiler.Compiler.compile(Compiler.java:314)
    org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:589)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:313)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:260)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    org.netbeans.modules.web.monitor.server.MonitorFilter.doFilter(MonitorFilter.java:393)
Run Code Online (Sandbox Code Playgroud)

servelet-api.jar位于Apache Tomcat的lib目录中.

请帮我解决一下.

Jan*_*yka 11

从错误看来,您似乎正在尝试导入不是类的东西.

如果你MyFunctions是一个类,你应该像这样导入它:

<%@page import="com.TransportPortal.MyFunctions"%>
Run Code Online (Sandbox Code Playgroud)

如果它是一个包,你想要导入包中的所有内容,你应该这样做:

<%@page import="com.TransportPortal.MyFunctions.* "%>
Run Code Online (Sandbox Code Playgroud)

编辑:

有两种情况会给你这个错误,编辑覆盖两者.


Cle*_*ral 9

它可能与Java JRE版本有关.

在我的情况下,我需要Tomcat 6.0.26,它与JRE 1.8.0_91提出相同的错误.降级至JRE 1.7.49解决了这个问题.

您可以在以下网址找到更多信息:http: //www.howopensource.com/2015/07/unable-to-compile-class-for-jsp-the-type-java-util-mapentry-cannot-be-resolved/