繁体   English   中英

Eclipse优化导入以包括静态导入

[英]Eclipse Optimize Imports to Include Static Imports

无论如何,让Eclipse自动寻找静态导入? 例如,现在我终于升级到Junit 4,我希望能够编写:

assertEquals(expectedValue, actualValue);

按Ctrl + Shift + O并添加Eclipse:

import static org.junit.Assert.assertEquals;

也许我问的太多了。

我正在使用Eclipse Europa,它也有“收藏夹”首选项部分:

窗口>首选项> Java>编辑器>内容辅助>收藏夹

在我的数据库中,我有以下条目(添加时,请使用“ New Type”并省略.* ):

org.hamcrest.Matchers.*
org.hamcrest.CoreMatchers.*
org.junit.*
org.junit.Assert.*
org.junit.Assume.*
org.junit.matchers.JUnitMatchers.*

除三分之一外,其余均为静态进口。 通过将它们作为收藏夹,如果我键入“ assertT ”并按Ctrl + Space ,则Eclipse会提供assertThat作为建议,如果选择它,它将为文件添加适当的静态导入。

如果突出显示方法Assert.assertEquals(val1, val2)并按Ctrl + Shift + M (添加导入),它将至少作为Eclipse 3.4将其添加为静态导入。

Eclipse 3.4在“窗口”->“首选项”->“ Java”->“编辑器”->“内容辅助”下具有“收藏夹”部分

如果您经常使用org.junit.Assert ,则可能会发现在其中添加一些价值。

并不是我想要的,但是我找到了一种解决方法。 在Eclipse 3.4(Ganymede)中,转到

窗口->首选项-> Java->编辑器-> Content Assist

并选中使用静态导入(仅1.5或更高版本)复选框。

这不会在“优化导入”中引入导入,但是如果您在该行上执行快速修复( CTRL + 1 ),它将为您提供添加足够好的静态导入的选项。

内容辅助静态导入

要获取静态成员的内容辅助建议,请在打开“收藏夹”首选项页面Java > Editor > Content Assist > Favorites首选项页面上配置收藏的静态成员列表。
例如,如果您已将java.util.Arrays.*org.junit.Assert.*添加到此列表中,则所有与完成前缀匹配的此类型的静态方法都将被添加到投标列表中。

打开Window » Preferences » Java » Editor » Content Assist » Favorites

在此处输入图片说明

对于SpringFramework测试,我建议也添加以下内容

org.springframework.test.web.servlet.request.MockMvcRequestBuilders
org.springframework.test.web.servlet.request.MockMvcResponseBuilders
org.springframework.test.web.servlet.result.MockMvcResultHandlers
org.springframework.test.web.servlet.result.MockMvcResultMatchers
org.springframework.test.web.servlet.setup.MockMvcBuilders
org.mockito.Mockito

当您在上方添加新的Type时,它将自动在包中添加。*。

在Eclipse 4.9中,您可以使用快速修复程序静态导入现有的调用。

已经实施了一个新的快速修复程序,该修补程序允许用户转换静态字段访问和静态方法以使用静态导入。 也可以同时替换所有出现的事件。

在这里更多细节

选择常数,输入

Ctrl + 1  (quick fix)

选择“转换为静态导入”。 从下拉列表中。

“快速修复”具有选项,即使这不是错误。

静态导入的快捷方式:CTRL + SHIFT + M

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM