You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Eclipse无法选中Project Facets中的Dynamic Web Module求助

Eclipse启用Dynamic Web Module失败问题

我是Eclipse新手,尝试在Project Facets中启用Dynamic Web Module,但每次勾选后点击应用,该选项会自动取消勾选。已尝试切换不同版本、清理重建项目、创建新的Dynamic Web项目,但问题依旧。该项目是RESTful Web服务教程项目。

错误日志:

java.lang.RuntimeException: java.lang.NoSuchMethodError: 'org.eclipse.core.runtime.jobs.IJobManager org.eclipse.core.runtime.Platform.getJobManager()'
at org.eclipse.wst.common.project.facet.ui.internal.FacetsPropertyPage.performOk(FacetsPropertyPage.java:289)
at org.eclipse.wst.common.project.facet.ui.internal.FacetsPropertyPage.performApply(FacetsPropertyPage.java:313)
at org.eclipse.jface.preference.PreferencePage.lambda$1(PreferencePage.java:289)
at org.eclipse.swt.events.SelectionListener$1.widgetSelected(SelectionListener.java:84)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:823)
at org.eclipse.jface.window.Window.open(Window.java:799)
at org.eclipse.ui.dialogs.PropertyDialogAction.run(PropertyDialogAction.java:155)
at org.eclipse.ui.internal.ide.actions.ProjectPropertyDialogAction.run(ProjectPropertyDialogAction.java:81)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:474)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:580)
at org.eclipse.jface.action.ActionContributionItem.lambda$4(ActionContributionItem.java:414)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4256)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1066)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4054)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3642)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:643)
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:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
at org.eclipse.equinox.launcher.Main.main(Main.java:1440)
Caused by: java.lang.NoSuchMethodError: 'org.eclipse.core.runtime.jobs.IJobManager org.eclipse.core.runtime.Platform.getJobManager()'
at org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper$FileAdapter.getSaveLock(WorkbenchResourceHelper.java:157)
at org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper$FileAdapter.aquireSaveLock(WorkbenchResourceHelper.java:141)
at org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper$FileAdapter.isConsistent(WorkbenchResourceHelper.java:213)
at org.eclipse.wst.common.internal.emfworkbench.WorkbenchResourceHelper.isConsistent(WorkbenchResourceHelper.java:314)
at org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorImpl.getInconsistentResources(ResourceStateValidatorImpl.java:283)
at org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorImpl.checkConsistency(ResourceStateValidatorImpl.java:150)
at org.eclipse.wst.common.internal.emfworkbench.validateedit.ResourceStateValidatorImpl.checkActivation(ResourceStateValidatorImpl.java:75)
at org.eclipse.wst.common.internal.emfworkbench.integration.EditModel.checkActivation(EditModel.java:628)
at org.eclipse.wst.common.componentcore.internal.ModuleStructuralModel.checkActivation(ModuleStructuralModel.java:319)
at org.eclipse.jst.j2ee.internal.listeners.ValidateEditListener.validateState(ValidateEditListener.java:255)
at org.eclipse.jst.j2ee.internal.listeners.ValidateEditListener.validateState(ValidateEditListener.java:330)
at org.eclipse.wst.common.componentcore.internal.StructureEdit.validateEdit(StructureEdit.java:972)
at org.eclipse.wst.common.componentcore.internal.StructureEdit.saveIfNecessary(StructureEdit.java:395)
at org.eclipse.wst.common.componentcore.internal.resources.VirtualComponent.create(VirtualComponent.java:373)
at org.eclipse.jst.j2ee.web.project.facet.WebFacetInstallDelegate.execute(WebFacetInstallDelegate.java:100)
at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.callDelegate(FacetedProject.java:1477)
at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.modifyInternal(FacetedProject.java:441)
at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.mergeChangesInternal(FacetedProject.java:1181)
at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.access$2(FacetedProject.java:1117)
at org.eclipse.wst.common.project.facet.core.internal.FacetedProject$5.run(FacetedProject.java:1099)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2380)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2405)
at org.eclipse.wst.common.project.facet.core.internal.FacetedProject.mergeChanges(FacetedProject.java:1109)
at org.eclipse.wst.common.project.facet.core.internal.FacetedProjectWorkingCopy.commitChanges(FacetedProjectWorkingCopy.java:2020)
at org.eclipse.wst.common.project.facet.ui.internal.FacetsPropertyPage$4.run(FacetsPropertyPage.java:232)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2380)
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2405)
at org.eclipse.wst.common.project.facet.ui.internal.FacetsPropertyPage$5.run(FacetsPropertyPage.java:246)
at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:122) 

解决方法:

  • 匹配Eclipse与WTP版本:确保安装的Web Tools Platform(WTP)插件和当前Eclipse版本完全对应,版本不兼容会导致核心方法找不到。建议直接下载Eclipse IDE for Enterprise Java and Web Developers,它内置了适配好的WTP组件,避免手动安装插件的冲突。
  • 检查JDK版本兼容性:部分旧版WTP插件不支持JDK17及以上版本,可尝试切换到JDK8或JDK11,在项目属性和Eclipse全局配置中统一JDK版本。
  • 手动修改项目配置:找到项目根目录下的.settings/org.eclipse.wst.common.project.facet.core.xml文件,添加或修改Dynamic Web Module的配置,示例如下:
    <?xml version="1.0" encoding="UTF-8"?>
    <faceted-project>
      <fixed facet="wst.jsdt.web"/>
      <installed facet="java" version="11"/>
      <installed facet="jst.web" version="4.0"/>
      <installed facet="wst.jsdt.web" version="1.0"/>
    </faceted-project>
    
    保存文件后刷新项目,重新同步配置。
  • 清理Eclipse缓存:删除工作区目录下的.metadata/.plugins/org.eclipse.core.resources/.history文件夹,重启Eclipse后执行Project > Clean操作,重建项目。
  • 重新安装Eclipse:如果上述方法无效,直接卸载当前Eclipse,下载对应版本的官方安装包,避免插件残留或损坏导致的问题。

内容的提问来源于stack exchange,提问作者Brian Salomone

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 02:02:11