JSP-BUG-The type java.xx.xx cannot be resolved
报错内容形式多为:
The type java.lang.CharSequence cannot be resolved. It is indirectly referenced from required .class files
The type java.util.Map$Entry cannot be resolved. It is indirectly referenced from required .class files
错误解决方法总结:
1、这个错误在JDK8出现的时候反映的人最多,当时(2014、2015)提供的方式大都是退回JDK7就好了。
评价:确实行之有效,但是到现在为止JDK8已经出现这么长时间,如果遇到这个问题还是降级的话未免有些太过于low了。
2、还有的网上给出的解决办法是:
It means: "A class that you use needs an other class that is not on the classpath." You should make sure to add the required jar to the classpath.
翻译:把需要的jar包,追加到classpath里就行
评价:本人对于javaweb开发不是太熟悉,这个给的解决办法对自己没有太多的实用性,我只是在JSP页面第一行import一个java.util.*而已,我自己也莫不清楚会用到什么jar包。有的人讲,可以用ctrl+鼠标点击,有时候会定位到对应jar包的位置。
3、更换更高级的IDE。
eclipse 官网提示:eclipse直到4.3.2 版本才完全对JDK8支持,contain full support for Java™ 8. For Kepler SR2 (4.3.2) ,可以下载新版本的eclipse使用。
评价:现在大家日常使用的IDE,无论是eclipse还是myeclipse版本都相对较新,大都已经完全支持JDK8了,这个解决办法几乎没什么用处了。
4、检查:项目设置中的installed jres是否是对应的版本。
选中项目-》右键-》java build path ->找到jre system library -》选择edit-》进入界面选择alternate jre ->在后面的installed jres..里选择jdk1.8的目录上的jre -》ok 之后,应用。
5、检查:软件默认的JDK环境已经改成自己配置的JDK8的版本。