Java 我正在尝试在Tomcat6.0中运行一个jsp项目。但是我得到了以下错误
例外情况:Java 我正在尝试在Tomcat6.0中运行一个jsp项目。但是我得到了以下错误,java,apache,jsp,tomcat,servlets,Java,Apache,Jsp,Tomcat,Servlets,例外情况: org.apache.jasper.JasperException: Unable to compile class for JSP: jsp文件:/user.jsp的第152行出现错误 无法解析类型java.lang.CharSequence。它是从必需的.class文件间接引用的 149: int length=5; 150: for (int i = 0; i <= length; i++ ) { 151:
org.apache.jasper.JasperException: Unable to compile class for JSP:
jsp文件:/user.jsp的第152行出现错误
无法解析类型java.lang.CharSequence。它是从必需的.class文件间接引用的
149: int length=5;
150: for (int i = 0; i <= length; i++ ) {
151: int pos = rand.nextInt(charset1.length());
152: sb.append(charset1.charAt(pos));
153: }
Java8支持接口中的默认方法。在JDK8中有很多
旧接口现在有了新的默认方法。例如,现在在
CharSequence我们有chars和codePoints方法。如果源级别为
您的项目低于1.8,则编译器不允许您使用
接口中的默认方法。所以它不能编译
直接依赖于间接依赖于此接口。如果我得到你的
问题是对的,那么你有两个解决方案。第一个解决办法是
回滚到JDK 7,然后您将使用旧的CharSequence接口
没有默认方法。第二种解决方案是设置源代码级别
将您的项目升级到1.8,那么您的编译器就不会抱怨了
接口中的默认方法
Ref:您的JDK版本是什么?您使用的是java 8吗?是的,我使用的是JDK 8,在tomcat安装时,它自动搜索JRE c:\program files(X86)\java\JRE6可能与我现在使用的JDK 7重复,即使它显示相同的错误。我需要重新安装tomcat吗?我已经将JAVA_HOME系统变量路径更改为C:\Program Files\JAVA\jdk1.7.0,即使它显示相同的错误eclipse中的源代码级别是什么?1.8?我没听懂。但是我没有使用Eclipse
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:423)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:308)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
note The full stack trace of the root cause is available in the Apache Tomcat/6.0.14 logs.