我从Sourceforge导入了一个Java Web应用程序,我花了三个星期的努力来消除项目名称和包附加的所有红色十字架,但现在我无法在我的Eclipse& tomcat6开发环境。在项目属性中,当我尝试设置部署程序集时,对话框显示:当前显示的页面包含无效值。在错误日志中,我发现当我单击部署程序集时,显示以下错误消息:
错误
Wed Jan 09 10:25:16 CST 2013
Problems occurred when invoking code from plug-in: "org.eclipse.jface".
java.lang.NullPointerException
at org.eclipse.wst.common.componentcore.internal.resources.VirtualFolder.getFirstTaggedResource(VirtualFolder.java:185)
at org.eclipse.jst.j2ee.componentcore.J2EEModuleVirtualComponent.getDefaultDeploymentDescriptorFolder(J2EEModuleVirtualComponent.java:542)
at org.eclipse.jst.j2ee.internal.ui.JavaEEDeploymentAssemblyAdvancedSectionBuilder.(JavaEEDeploymentAssemblyAdvancedSectionBuilder.java:86)
at org.eclipse.jst.j2ee.internal.ui.J2EEModuleDependenciesPropertyPage.getAdvancedSectionBuilder(J2EEModuleDependenciesPropertyPage.java:381)
at org.eclipse.jst.j2ee.internal.ui.J2EEModuleDependenciesPropertyPage.(J2EEModuleDependenciesPropertyPage.java:65)
at org.eclipse.jst.servlet.ui.internal.WebDependencyPropertyPage.(WebDependencyPropertyPage.java:34)
at org.eclipse.jst.servlet.ui.internal.WebModuleDependencyPageProvider.createPages(WebModuleDependencyPageProvider.java:54)
at org.eclipse.wst.common.componentcore.ui.propertypage.ModuleAssemblyRootPage.createContents(ModuleAssemblyRootPage.java:195)
at org.eclipse.jface.preference.PreferencePage.createControl(PreferencePage.java:232)
at org.eclipse.wst.common.componentcore.ui.propertypage.ModuleAssemblyRootPage.createControl(ModuleAssemblyRootPage.java:346)
at org.eclipse.jface.preference.PreferenceDialog.createPageControl(PreferenceDialog.java:1502)
at org.eclipse.jface.preference.PreferenceDialog$14.run(PreferenceDialog.java:1259)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:1253)
at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.showPage(FilteredPreferenceDialog.java:675)
at org.eclipse.jface.preference.PreferenceDialog$10.run(PreferenceDialog.java:709)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:70)
at org.eclipse.jface.preference.PreferenceDialog$9.selectionChanged(PreferenceDialog.java:705)
at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:888)
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)
at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:49)
at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:175)
at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:886)
at org.eclipse.jface.viewers.StructuredViewer.handlePostSelect(StructuredViewer.java:1226)
at org.eclipse.jface.viewers.StructuredViewer$5.widgetSelected(StructuredViewer.java:1251)
at org.eclipse.jface.util.OpenStrategy.firePostSelectionEvent(OpenStrategy.java:262)
at org.eclipse.jface.util.OpenStrategy.access$5(OpenStrategy.java:256)
at org.eclipse.jface.util.OpenStrategy$3.run(OpenStrategy.java:433)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4144)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761)
at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
at org.eclipse.jface.window.Window.open(Window.java:801)
at org.eclipse.ui.dialogs.PropertyDialogAction.run(PropertyDialogAction.java:158)
at org.eclipse.jface.action.Action.runWithEvent(Action.java:498)
at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:584)
at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:501)
at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:411)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4169)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3758)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1022)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:916)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:585)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:540)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:124)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
我多次用Google搜索,但我找不到解决方案。任何人都可以帮忙让部署程序集工作吗?我认为这是我的应用程序无法运行的关键。提前致谢。
答案 0 :(得分:11)
答案 1 :(得分:5)
请看这个:https://stackoverflow.com/a/3492924
如果clean
无效,那么项目的具体设置可能出现问题。我建议你检查.settings/
目录中的每个文件。
我知道这不是一个随时可用的解决方案,但可能至少是一个起点。祝你好运。
答案 2 :(得分:3)
我也遇到过这个问题。这是因为我删除了我当前项目所依赖的另一个项目。我通过在.settings文件夹中打开文件org.eclipse.wst.common.component
并删除依赖项来修复此问题。这解决了问题,我能够编辑部署程序集。
我删除的部分:( utility.jar是我的违规jar的名称)
<dependent-module archiveName="utility.jar" deploy-path="/WEB-INF/lib" handle="module:/resource/utility/utility">
<dependency-type>uses</dependency-type>
</dependent-module>
我使用的其他人可以通过从构建路径中删除jar来修复它。
希望这可以帮助任何人解决这个问题。
答案 3 :(得分:0)
删除.project .classpath和.settings然后清除一个新的(临时)工作区 在新工作区中导入项目,这将生成新的.project .classpath和.settings文件。然后再次打开旧工作区并修复问题。如果不需要,可以删除临时工作空间
答案 4 :(得分:0)
请检查此文件&#34; .settings / org.eclipse.wst.common.component&#34;在.settings文件夹下,映射到UI中的部署程序集。请检查&#34; wb-module&#34;标记并清理其中的wb-resource项(如果存在)。
此文件将在eclipse的导航器视图中可见
答案 5 :(得分:0)
在添加 Source (文件夹)并尝试修改 Deploy Path 后,我在不同情况下遇到了相同的状态。因此,得到了相同的错误消息: Deployment Assembly:当前显示的页面包含无效值。不幸的是,上述想法没有帮助,许多想法似乎建议对似乎很小的配置问题进行更大的删除/重新安装操作。
不幸的是,在给定的错误状态下,Eclipse(版本:Mars.2版本(4.5.2))不允许使用GUI进行更正...所以我接下来要做的事情。
我发现在 {workspace} / {project} /中的 xml文件org.eclipse.wst.common.component 中标记为<wb-resource .... />
的条目。设置-文件夹中的wb-resources输入不完整。我需要在其中包含以下内容:
<wb-resource deploy-path="/" source-path="/web" tag="defaultRootSource"/>
<wb-resource deploy-path="/WEB-INF/classes" source-path="/src"/>
wegb行不完整,并且包含src的行完全丢失。此文件/位置已被确定为目标,并且在较早的答案中也被标识为潜在损坏/无效。修复此文件并不能使GUI工作。接下来,我不得不从插件历史记录中删除几行。
在 {workspace} /。metadata / .plugins / org.eclipse.core.resources / .history 文件夹中,我找到了最新文件夹,并删除了包含与 Deployment Assembly 相关的更改的文件夹。
重启Eclipse之后,我可以再次使用GUI进行配置! 我不需要删除/重新安装项目(由于配置过多,我想避免重新安装项目)。我希望这可以帮助其他人遇到相同的错误消息。
答案 6 :(得分:0)
我遇到了同样的问题,我意识到它是在我将其安装到Neon.1a Eclipse中之后才开始的,该插件针对的是3.x版。
所以我卸载了该插件,问题消失了,而没有改变我的工作区。
(仅是为了完成信息,我将说“罪魁祸首”是Randalco EHP插件,但我想任何旧版本的插件也可能都是可疑的。)
答案 7 :(得分:0)
添加:
--launcher.GTK_version
2
到 eclipse.ini 为我在 Fedora 33 GNOME 上解决了问题