Eclipse Mars - 一个特定的文件无法在比较编辑器中打开?

Sco*_*mon 7 javascript eclipse subclipse svn compare

上周突然间,单个javascript文件将不再在比较编辑器中打开.

  • 我正在运行最新的Mars Eclipse
  • 我正在运行最新的Subclipse
  • 我与repo同步,并看到更改的文件
  • 当我双击或选择比较时,我会看到一个空白的白页,其中包含"正在初始化..."或一个空白的灰色页面
  • 它只有一个特定的文本.js文件...项目中的所有其他文件,其他项目差异很好.
  • 该文件是37,880字节
  • 我删除了subversion设置文件,并重新创建了它们
  • 我检查了首选项并忽略了空格

它只是这个ONE文件......它是node.js项目的主文件.它过去常常很好,上周突然间这个文件将不再差异并抛出此异常.

当我查看日志时,我看到以下异常:

!ENTRY org.eclipse.ui 4 0 2016-04-14 12:38:08.535!MESSAGE未处理的事件循环异常!STACK 0 org.eclipse.swt.SWTException:无法在org上执行runnable(java.lang.IllegalArgumentException).位于org.eclipse.swt.wts.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138)的org.eclipse.swt.SWT.error(SWT.java:4406)的eclipse.swt.SWT.error(SWT.java:4491) org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4155)位于org.eclipse.e4.ui.internal.workbench的org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3772) .swt.PartRenderingEngine $ 4.run(PartRenderingEngine.java:1127)位于org.eclipse.e4.ui.internal.workbench.swt的org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337). PartRenderingEngine.run(PartRenderingEngine.java:1018)atg.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)org.eclipse.ui.internal.Workbench $ 5.run(Workbench.java) :694)org.eclipse.core.databinding.observable.Realm.runWithDefault(Re alm.java:337)org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:606)org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)atg.eclipse.ui.internal位于org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher的org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)的.ide.application.IDEApplication.start(IDEApplication.java:139) .runApplication(EclipseAppLauncher.java:134)位于org.eclipse.core.runtime.adaptor.EclipseStarter.run上的org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)(EclipseStarter.java) :380)atg.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)at sun位于org.eclipse.equinox.launcher.Main.invokeFramewor的java.lang.reflect.Method.invoke(未知来源)的.reflect.DelegatingMethodAccessorImpl.invoke(未知来源)k(Main.java:669)org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)org.eclipse.equinox.launcher.Main.run(Main.java:1515)

由org.eclipse.wst.jsdt.core.dom.ASTConverter.convertToVariableDeclarationStatement(ASTConverter.)中的org.eclipse.wst.jsdt.core.dom.ASTNode.setSourceRange(ASTNode.java:2490)中的java.lang.IllegalArgumentException引起. java:2696)org.eclipse.wst.jsdt.core.dom.ASTConverter.checkAndAddMultipleLocalDeclaration(ASTConverter.java:319)org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:436) org.eclipse.wst.jsdt.core.dom.ASTConverter.convert(ASTConverter.java:1175)org.eclipse的org.eclipse.wst.jsdt.core.dom.JavaScriptUnitResolver.convert(JavaScriptUnitResolver.java:262)位于org.eclipse.wst.jsdt的org.eclipse.wst.jsdt.core.dom.ASTParser.createAST(ASTParser.java:647)的.wst.jsdt.core.dom.ASTParser.internalCreateAST(ASTParser.java:887) .internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:284)位于org.eclipse.c的org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureCreator.createStructureComparator(JavaStructureCreator.java:243)ompare.structuremergeviewer.StructureCreator.internalCreateStructure(StructureCreator.java:121)位于org.eclipse.compare的网站上,org.eclipse.compare的网站上的org.eclipse.compare. java:96)org.eclipse.wt上的Org.eclipse.swt.custom.BusyIndi​​cator.showWhile(BusyIndi​​cator.java:70)org.eclipse.compare.internal.Utilities.runInUIThread(Utilities.java:859)org.eclipse.comparemergeviewer .structureCreator.createStructure(StructureCreator.java:102)位于org.eclipse.compare中的org.eclipse.compare中的结构信息,结构信息来自org.eclipse.compare中的$ StructureInfo.createStructure(StructureDiffViewer.java:155).StructureDiffViewer $ StructureInfo.refresh(StructureDiffViewer.java) :133)org.eclipse.compare中的org.eclipse.compare中的org.eclipse.compare.结构调整器.StructureDiffViewer $ StructureInfo.setInput(StructureDiffViewer.java:104)org.eclipse.compare.java:342)org.eclipse.compare中的org.eclipse.comparemer.viewmergeviewer.StructureDiffViewer $ 2.run(StructureDiffViewer.java:74)org.eclipse.compare中的ord.eclipse.compare. .custom.BusyIndi​​cator.showWhile(BusyIndi​​cator.java:70)位于org.eclipse.compare上的org.eclipse.compare中的org.eclipse.compare的内容.(ord.eclipse.compare)是一个org.eclipse.compare输入调整器.结构调整器. )org.eclipse.wst.jsdt.internal.ui.compare.JavaStructureDiffViewer.compareInputChanged(JavaStructureDiffViewer.java:143)位于org.eclipse的org.eclipse.compare.structuremergeviewer.StructureDiffViewer.inputChanged(StructureDiffViewer.java:278).位于org.eclipse.compare.CompareViewerSwitchingPane.setInput(CompareViewerSwitchingPane.java:277)的org.eclipse.jface.viewers.StructuredViewer.setInput(StructuredViewer.java:1701)的jface.viewers.ContentViewer.setInput(ContentViewer.java:292)在组织 .eclipse.compare.internal.CompareStructureViewerSwitchingPane.setInput(CompareStructureViewerSwitchingPane.java:132)atg.eclipse.compare.CompareEditorInput.feedInput(CompareEditorInput.java:747)org.eclipse.compare.CompareEditorInput.createContents(CompareEditorInput.java:555) )org.eclipse.compare.compareEditor.creareEditor.adcess $ 6(CompareEditor.java:422)org.eclipse.compare.inare.CompareEditor上的org.eclipse.compare.internal.CompareEditor.createCompareControl(CompareEditor.java:462) $ 3.run(CompareEditor.java:378)位于org.eclipse.ui.Uternal上的org.eclipse.ui.Uternal中的.orm.eclipse.ui.UUNock.UP场合.$ 3.run(UISynchronizer.java:154) org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)... 23更多

小智 15

我没有解决方案,但我遇到了同样的问题并找到了解决方法.我在"常规" - >"比较/补丁"下的日食偏好中关闭了"自动打开结构比较".然后我就可以在比较编辑器中打开文件了.


gre*_*449 2

这看起来像 Eclipse bug 390913,它已经开放了一段时间,但似乎没有取得任何进展。