没有完成可用,奇怪的Eclipse行为

Lim*_*ile 25 java eclipse content-assist

我想我尝试了所有建议的解决方案,但这个Eclipse自动完成问题非常特别:

  1. 我启动Eclipse,内容辅助工作正常;
  2. 我想在Swing项目中创建一个LineBorder;
  3. 我输入LineBorder panelBorder = new Li并按Ctrl + Space;
  4. 没有弹出窗口,状态栏中显示红色"无法完成";
  5. 我在内容辅助工作2秒前完成的元素上尝试Ctrl + Space,它不再起作用了.
  6. 我在其他项目上尝试相同的事情,关闭并重新打开后在同一个项目上,清理它之后内容辅助工作正常,然后我尝试使用LineBorder构造函数,然后崩溃.

我尝试了什么:

  1. 在'Preferences-> Java-> Editor-> Content Assist-> Advanced'中重置为默认值;
  2. 检查同一菜单中的每个复选框;
  3. 创建一个新工作区并在那里尝试;
  4. 删除.metadata/.plugins/org.eclipse.jdt.core中的.index文件和'savedIndexNames.txt';
  5. 检查重复的库.

我没有尝试的是重新安装Eclipse.我使用的版本是Eclipse IDE for Java Developers(Juno).

似乎没什么用.

更新:

按照iGili的建议检查日志.在失败时提出了一些例外:

org.eclipse.e4.core.di.InjectionException: org.eclipse.core.commands.ExecutionException: While executing the action, an exception occurred
Caused by: org.eclipse.core.commands.ExecutionException: While executing the action, an exception occurred
Caused by: java.lang.ArrayIndexOutOfBoundsException: 1
    at org.eclipse.jdt.internal.codeassist.InternalCompletionProposal.findConstructorParameterNames(InternalCompletionProposal.java:257)
    at org.eclipse.jdt.internal.codeassist.InternalCompletionProposal.findParameterNames(InternalCompletionProposal.java:1456)
    at org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider.appendUnboundedParameterList(CompletionProposalLabelProvider.java:113)
    at org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider.createMethodProposalLabel(CompletionProposalLabelProvider.java:272)
    at org.eclipse.jdt.ui.text.java.CompletionProposalLabelProvider.createStyledLabel(CompletionProposalLabelProvider.java:570)
    at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.computeDisplayString(LazyJavaCompletionProposal.java:262)
    at org.eclipse.jdt.internal.ui.text.java.LazyJavaCompletionProposal.getStyledDisplayString(LazyJavaCompletionProposal.java:238)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.handleSetData(CompletionProposalPopup.java:841)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup.access$24(CompletionProposalPopup.java:831)
    at org.eclipse.jface.text.contentassist.CompletionProposalPopup$3.handleEvent(CompletionProposalPopup.java:593)
    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.Widget.sendEvent(Widget.java:1077)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1062)
    at org.eclipse.swt.widgets.Table.checkData(Table.java:1166)
    at org.eclipse.swt.widgets.Table.wmNotifyChild(Table.java:6749)
    at org.eclipse.swt.widgets.Control.wmNotify(Control.java:5534)
    at org.eclipse.swt.widgets.Composite.wmNotify(Composite.java:1896)
    at org.eclipse.swt.widgets.Control.WM_NOTIFY(Control.java:5086)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4584)
    at org.eclipse.swt.widgets.Canvas.windowProc(Canvas.java:341)
    at org.eclipse.swt.widgets.Decorations.windowProc(Decorations.java:1627)
    at org.eclipse.swt.widgets.Shell.windowProc(Shell.java:2069)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:4989)
    at org.eclipse.swt.internal.win32.OS.CallWindowProcW(Native Method)
    at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:2440)
    at org.eclipse.swt.widgets.Table.callWindowProc(Table.java:564)
    at org.eclipse.swt.widgets.Table.callWindowProc(Table.java:430)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4623)
Run Code Online (Sandbox Code Playgroud)

它继续,我不知道发布长堆栈跟踪的约定

小智 75

我有同样的.Windows - >首选项 - > Java - >编辑器 - >内容辅助 - >高级.确保在默认内容辅助列表(弹出的第一个面板)中勾选"Java Proposals"复选框.

通过单击底部的"恢复默认值"按钮,可以自动检查"Java Proposals".


nit*_*ind 5

返回“高级内容辅助”首选项页面并恢复默认值。使用“确定”按钮关闭对话框。

  • 这正是我多次做过的事情。没有帮助 (3认同)