Eclipse The type java.lang.String cannot be resolved
问题现象
最近更新了eclipse版本,在新版的eclipse中,引用maven工程后,提示信息:
The type java.lang.String cannot be resolved. It is indirectly referenced from required .class files
操作步骤
以前在旧版eclipse中没有问题,开始以为是eclipse新版的bug,就换回了旧版。但是神奇的发现,原来没问题的工程,在旧版中也有问题了。
问题跟eclipse版本没有太大关系了,那就是eclipse环境配置的问题。
对比了新旧版本的maven环境,没有问题。
修改了工程环境,删除了工程中的eclipse相关文件(.project,.settings),发现还是不起作用。
搜索了百度、谷歌、问了chatgpt,没有找到有用的信息。
后来发现了一篇文章——https://blog.csdn.net/cheng__lu/article/details/107611010
问题原因
eclipse中引用的jdk错误,我本地安装了两个jdk1.8,eclipse选择的不对。
修改方法
1.打开eclipse,从当前workspace中删除工程
2.退出eclipse
3.删除工程下的.project和.settings文件
4.打开eclipse
5.修改eclipse中jdk1.8对应的版本
6.在导入的项目上右击->properties->Java Bulid Path->Libraries 将jdk删除 -> Apply and close。
7.之后再在导入的项目上右击->properties->Java Bulid Path->Libraries->JRE System Library,选择正确的jdk版本即可。