记一次eclipse 打开选择workspace窗口崩溃的问题的解决

来源:互联网 发布:烟袋斜街10号 网络剧9 编辑:程序博客网 时间:2024/06/05 07:48

突然eclipse打不开了,弹框提示“An error has occurred.See the log file”。log文件内容如下,只截取前面一段


BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=zh_CN
Framework arguments:  -product org.eclipse.epp.package.jee.product
Command-line arguments:  -os win32 -ws win32 -arch x86 -product org.eclipse.epp.package.jee.product


!ENTRY org.eclipse.osgi 4 0 2017-10-03 22:33:10.849
!MESSAGE Application error
!STACK 1
java.lang.ArrayIndexOutOfBoundsException
at java.lang.System.arraycopy(Native Method)
at java.util.Arrays.copyOfRange(Arrays.java:3485)
at java.util.Arrays.copyOfRange(Arrays.java:3441)
at org.eclipse.ui.internal.ide.ChooseWorkspaceDialog.lambda$7(ChooseWorkspaceDialog.java:380)
at org.eclipse.ui.internal.ide.ChooseWorkspaceDialog$$Lambda$18/18025156.apply(Unknown Source)


可见是数组溢出,发生在打开选择workspace窗口的时候。

修改eclipse\configuration\.settings\org.eclipse.ui.ide.prefs 文件

MAX_RECENT_WORKSPACES=10
RECENT_WORKSPACES=D\:\\eclipse\\workspace\n\\\nD\:\\eclipse\\work
RECENT_WORKSPACES_PROTOCOL=3
SHOW_RECENT_WORKSPACES=false
SHOW_WORKSPACE_SELECTION_DIALOG=true
eclipse.preferences.version=1

将SHOW_WORKSPACE_SELECTION_DIALOG 改为false,让eclipse启动的时候不打开这个窗口。

再次启动eclipse,成功了。那么问题出在哪呢?我发现File->Switch Workspace 里多了一个 \ 工作空间,明显有问题,再回到eclipse\configuration\.settings\org.eclipse.ui.ide.prefs 文件

MAX_RECENT_WORKSPACES=10
RECENT_WORKSPACES=D\:\\eclipse\\workspace\n\\\nD\:\\eclipse\\work
RECENT_WORKSPACES_PROTOCOL=3
SHOW_RECENT_WORKSPACES=false
SHOW_WORKSPACE_SELECTION_DIALOG=true
eclipse.preferences.version=1

在RECENT_WORKSPACES里以回车\n分割,中间多了两杠\\,将这个工作空间删掉,再将SHOW_WORKSPACE_SELECTION_DIALOG 改回true,再次启动eclipse,选择workspace窗口又回来了!!

后来想一想,应该是上一次启动eclipse时想按回车,不小心按了上面的反斜杠,选了 \ 这个工作空间,怪不得上次打开的时候,工作空间里什么都没有,要切换回原来的工作空间。


原创粉丝点击