大概率是关机时部分文件残留导致了冲突,实际也印证了这一点,删除 .snap 文件后就解决了。
一、错误信息
错误截图:

C:\Java\YourProject\.metadata\.log 中记录的错误日志:
!SESSION 2024-09-13 16:08:24.916 -----------------------------------------------
eclipse.buildId=4.26.0.20221201-1200
java.version=17.0.5
java.vendor=Eclipse Adoptium
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=ja_JP
Framework arguments: -product org.eclipse.epp.package.java.product
Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product
!ENTRY org.eclipse.core.resources 2 10035 2024-09-13 16:08:29.722
!MESSAGE ワークスペースは以前のセッションで変更が保存されずに終了しました; 変更を回復するためにワークスペースをリフレッシュ中です。
!ENTRY org.eclipse.osgi 4 0 2024-09-13 16:08:31.327
!MESSAGE バンドル org.eclipse.core.resources (150) を自動的に有効化している間にエラーが発生しました。
!STACK 0
org.osgi.framework.BundleException: バンドル org.eclipse.core.resources の org.eclipse.core.resources.ResourcesPlugin.開始() での例外。
at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:839)
at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:767)
at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:1032)
at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:371)
at org.eclipse.osgi.container.Module.doStart(Module.java:605)
at org.eclipse.osgi.container.Module.start(Module.java:468)
at org.eclipse.osgi.framework.util.SecureAction.start(SecureAction.java:513)
at org.eclipse.osgi.internal.hooks.EclipseLazyStarter.postFindLocalClass(EclipseLazyStarter.java:117)
at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findLocalClass(ClasspathManager.java:570)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.findLocalClass(ModuleClassLoader.java:335)
at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:397)
at org.eclipse.osgi.internal.loader.sources.SingleSourcePackage.loadClass(SingleSourcePackage.java:41)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass0(BundleLoader.java:496)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:416)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:168)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
at org.eclipse.ui.ide.IDE.registerAdapters(IDE.java:1751)
at org.eclipse.ui.internal.ide.application.IDEWorkbenchAdvisor.initialize(IDEWorkbenchAdvisor.java:206)
at org.eclipse.ui.application.WorkbenchAdvisor.internalBasicInitialize(WorkbenchAdvisor.java:171)
at org.eclipse.ui.internal.Workbench$18.runWithException(Workbench.java:1615)
at org.eclipse.ui.internal.StartupThreading$StartupRunnable.run(StartupThreading.java:36)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:183)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:133)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:4785)
at org.eclipse.ui.internal.StartupThreading.runWithoutExceptions(StartupThreading.java:94)
at org.eclipse.ui.internal.Workbench.init(Workbench.java:1611)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:2748)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:636)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:550)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:171)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:402)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:651)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:588)
at org.eclipse.equinox.launcher.Main.run(Main.java:1459)
Caused by: java.lang.StackOverflowError
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
at org.eclipse.core.internal.dtree.DeltaDataTree.reroot(DeltaDataTree.java:808)
二、解决方法
删除 C:\Java\YourProject\.metadata\.plugins\org.eclipse.core.resources\*.snap 文件。
参考资料