Eclipse:自动填充类名称时排除特定的软件包


100

在Eclipse中自动完成类名时,例如,如果键入:

ListITab

出现一个弹出菜单,为您提供匹配的类名称以供完成(可以使用鼠标或使用箭头键进行选择:

在此示例中,我几乎可以肯定想要java.util.ListIterator并且几乎不想要com.sun.xml.internal.bind.v2.runtime.reflect.ListIterator(或该软件包中的其他任何东西)。

这个特定的类会经常出现在列表中(每次我声明一个ListIterator)。我希望能够从自动完成搜索中排除软件包,这样就java.util.ListIterator可以自动完成而无需弹出菜单。

这可能吗?


1
哦,如果您可以选择一个您不喜欢的选项,然后像在其他某些程序中一样按Delete键,那就太好了。但是,没有...
托尔比约恩Ravn的安徒生

2
刚刚完成我的回答,以解决java.awt.List您在评论中提到的问题。
VonC

Answers:


144
  Window->Preferences->Java->Appearance->Type Filters

您应该能够在此处指定不想看到的软件包。

http://help.eclipse.org/galileo/topic/org.eclipse.jdt.doc.user/tips/images/type-filter.png

请参阅Java技巧和窍门

要排除某些类型不出现在内容辅助中,请使用Java > Appearance > Type Filters首选项页面上配置的类型过滤器功能。
与这些过滤器模式之一匹配的类型将不会出现在“打开类型”对话框中,并且将不能用于内容辅助,快速修复和组织导入。
这些过滤器模式不会影响“程序包资源管理器”和“层次结构”视图。


finnw(OP)在注释中添加:

现在如何将单个类添加到此列表?我对java.awt.List不感兴趣,但有时我想要java.awt.Window或java.awt.Dimension。–

“类型过滤器”实际上基于类模式匹配,即添加以下内容:

 java.awt.List

该课程将从内容帮助命题中消失。
如果您知道所有java.awt.Lxxx课程都不感兴趣,则可以添加

 java.awt.L*

来自的所有其他班级java.awt仍将在那里提供内容帮助。
对于最近的日食(我现在有一个日食3.6Mx,但是它也适用于3.5.x),您不仅限于类型过滤器中的模式。


4
它也区分大小写,这就是为什么当我尝试“ java.awt.list”时它不起作用的原因。
finnw 2010年

6
很遗憾您不能只对某些类进行优先排序而不是将它们从列表中删除...
Andy

3
感谢您的回答-即使我之前添加了一些内容,我也必须为此搜索Google。
令人遗憾的

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.