笔记本重装后Eclipse中SpringBoot语言服务器初始化失败
Eclipse 2024-06启动卡在"Initializing language server"的解决办法
问题重现
重装系统恢复文件后,启动Eclipse 2024-06时持续显示"Initializing language server ..."无法完成初始化,语言服务器日志报错:
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'springSymbolIndex' defined in file [C:\Users\dk068x\.p2\pool\plugins\org.springframework.tooling.boot.ls_1.55.1.202406141939\servers\spring-boot-language-server\BOOT-INF\classes\org\springframework\ide\vscode\boot\app\SpringSymbolIndex.class]: org/springframework/ide/vscode/boot/app/SpringSymbolIndex$2 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1788) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:600) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:784) ... 19 common frames omitted Caused by: java.lang.NoClassDefFoundError: org/springframework/ide/vscode/boot/app/SpringSymbolIndex$2 at org.springframework.ide.vscode.boot.app.SpringSymbolIndex.afterPropertiesSet(SpringSymbolIndex.java:169) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1835) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1784) ... 29 common frames omitted Caused by: java.lang.ClassNotFoundException: org.springframework.ide.vscode.boot.app.SpringSymbolIndex$2 at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:525) ... 32 common frames omitted
解决方案
1. 重置工作区配置
- 关闭Eclipse,找到当前工作区根目录下的
.metadata文件夹,将其重命名为.metadata_old(避免直接删除丢失自定义配置)。 - 重新启动Eclipse并选择原工作区,系统会自动重建工作区的基础配置文件。
2. 修复Spring Boot Language Server插件
- 打开Eclipse,依次点击
Help->Install New Software。 - 在弹出的窗口中点击
What is already installed?,找到Spring Tools 4相关插件(重点是org.springframework.tooling.boot.ls),选中后点击Uninstall,完成操作后重启Eclipse。 - 重启后打开
Eclipse Marketplace,搜索Spring Tools 4并重新安装最新版本。
3. 清理p2池损坏插件文件
- 关闭Eclipse,定位到路径
C:\Users\dk068x\.p2\pool\plugins\org.springframework.tooling.boot.ls_1.55.1.202406141939,删除该文件夹。 - 启动Eclipse,系统会自动检测缺失的插件文件并重新下载、安装。
4. 验证JDK版本兼容性
- 打开
Window->Preferences->Java->Installed JREs,确认使用的是JDK 17或更高版本(Eclipse 2024-06的推荐兼容版本)。 - 若JDK版本不符,添加对应版本的JDK并设为默认,同时检查Eclipse安装目录下的
eclipse.ini文件,确保-vm参数指向正确的JDK路径,示例:-vm C:\Program Files\Java\jdk-17.0.10\bin\javaw.exe
内容的提问来源于stack exchange,提问作者David M. Karr
相关产品推荐
相关产品推荐

