几天前,我将Eclipse设置为第一次使用JavaFX。 Eclipse在我的计算机上已经安装了几个月,并且可以在我的计算机上正常工作。今天,我尝试启动Eclipse,但无法启动。日志文件中的第一个例外如下。完整的日志文件位于:https://pastebin.com/NKLgdfhG
有什么想法吗?
!ENTRY org.eclipse.jdt.ui 4 0 2018-09-11 19:48:16.228
!MESSAGE Error retrieving proposal text.
Display string:
No Proposals
Pattern:
out.println("
!STACK 0
java.lang.StringIndexOutOfBoundsException: String index out of range: 13
at java.lang.String.substring(Unknown Source)
at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getPatternMatchRule(AbstractJavaCompletionProposal.java:919)
at org.eclipse.jdt.internal.ui.text.java.AbstractJavaCompletionProposal.getStyledDisplayString(AbstractJavaCompletionProposal.java:1256)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.handleSetData(CompletionProposalPopup.java:861)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$8(CompletionProposalPopup.java:844)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup$3.handleEvent(CompletionProposalPopup.java:597)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:86)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4428)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1079)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1103)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1088)
at org.eclipse.swt.widgets.Table.checkData(Table.java:1189)
at org.eclipse.swt.widgets.Table.wmNotifyChild(Table.java:6981)
at org.eclipse.swt.widgets.Control.wmNotify(Control.java:5869)
at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:2025)
at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:5423)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4899)
at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:359)
at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1657)
at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2199)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5191)
at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:2454)
at org.eclipse.swt.widgets.Table.callWindowProc(Table.java:587)
at org.eclipse.swt.widgets.Table.callWindowProc(Table.java:453)
at org.eclipse.swt.widgets.Control.windowProc(Control.java:4941)
at org.eclipse.swt.widgets.Table.windowProc(Table.java:6118)
at org.eclipse.swt.widgets.Display.windowProc(Display.java:5191)
at org.eclipse.swt.internal.win32.OS.SendMessageW(Native Method)
at org.eclipse.swt.internal.win32.OS.SendMessage(OS.java:3333)
at org.eclipse.swt.widgets.Table.select(Table.java:3519)
at org.eclipse.swt.widgets.Table.setSelection(Table.java:5256)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.selectProposal(CompletionProposalPopup.java:1407)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup.setProposals(CompletionProposalPopup.java:1179)
at org.eclipse.jface.text.contentassist.CompletionProposalPopup$1.run(CompletionProposalPopup.java:366)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:37)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:182)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4213)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3820)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1150)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1039)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:153)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:680)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:336)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:594)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:148)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:151)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:388)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:243)
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:653)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:590)
at org.eclipse.equinox.launcher.Main.run(Main.java:1499)
答案 0 :(得分:0)
提到的日志条目发生在2018年9月。最后一个条目插入到日志的末尾,而不是开头。
可能是从2019年4月8日至13日在您的系统上从Java 8升级到11的,导致了问题(Java 11不再包含JavaFX)
!SESSION 2019-04-08 20:31:32.915 -----------------------------------------------
eclipse.buildId=4.7.1.M20171009-0410
java.version=1.8.0_161
[...]
!SESSION 2019-04-13 00:34:34.112 -----------------------------------------------
eclipse.buildId=4.7.1.M20171009-0410
java.version=11.0.2
Running Eclipse with Java 8 应该可以解决您的问题。如果要使用Java 11运行Eclipse,则必须首先upgrade Eclipse(落后四个发行版)。