我是否必须一直手动添加静态导入?

时间:2013-10-17 19:33:06

标签: eclipse junit

eclipse和Java的长期用户。我在Eclipse中发现的一个问题是,似乎没有简单的方法来导入静态成员和方法。

fail()

中的jUnit org.junit.Assert方法

我每天创建几个类,并手动添加

import static org.junit.Assert.fail;

到import语句。这很烦人。我绝对喜欢使用 Ctrl + Shift + O 来组织我的导入,但它仍然找不到static成员和方法

此外,导入不会出现在日食中 enter image description here

有趣的是,我以前看过它是否有效,但我无法回想起这些变量。

所以我的问题是:

是否有人知道我需要做什么来确保始终识别此静态导入,并且可以使用 Ctrl + Shift + O


谢谢@qqilihq。

注意:

接受的答案不适用于我在eclipse中首选的Organize Imports键盘快捷键,但适用于“悬停”建议。

3 个答案:

答案 0 :(得分:23)

你可以使用 Ctrl + Shift + M ,例如你想从Mockito类导入验证方法然后

Mockito.verify() // select verify and press Ctrl + Shift + M

这将从Mockito类导入验证静态方法。

答案 1 :(得分:22)

您是否看过偏好设置> Java>编辑>内容辅助>收藏夹?您可以在那里定义静态导入的候选者。结果:

enter image description here

对于较少使用的类,您可以降低Preferences > Java > Code Style > Organize Imports > Number of static imports needed for .*的值,但请注意,对于包含通用命名方法(如.*)的类,您可能会获得getInstance。这反过来可能会导致混淆和/或命名冲突。

答案 2 :(得分:2)

您可以从偏好设置>添加静态导入的类。 Java>编辑>内容辅助> Eclipse中的收藏夹页面。然后,Ctrl + Space快捷键会在内容辅助菜单中列出您喜欢的类的所有静态成员。