Eclipse中的默认导入

时间:2015-02-18 11:34:35

标签: java eclipse

有没有办法在Eclipse中自定义默认导入?

例如,如果我默认打开一个新的JUnit Test Class,我会得到这些导入:

import static org.junit.Assert.*;
import org.junit.Test;

我想得到什么:

import static org.junit.Assert.*;
import org.junit.Test;
import static org.hamcrest.Matchers.*;

5 个答案:

答案 0 :(得分:12)

不幸的是,Eclipse在重构和创建新实体时非常缺乏代码生成的可自定义性。

您可能需要查看Eclipse Optimize Imports to Include Static Imports以获取有关如何使内容辅助在预定义类中查找静态方法的信息。那可能就是你真正想要的。在接受的答案中,Joey Gibson写道,您可以将org.hamcrest.Matchers添加到窗口»首选项»Java»编辑器»内容辅助»收藏夹

静态导入Hamcrest方法的特定问题的另一个解决方案是配置名为hamcrest的代码模板。这样你只需键入 ham 并跟进 ctrl + space 即可获得最高导入。

模板应该看起来像

${staticImport:importStatic('org.hamcrest.Matchers.*')}${cursor}

更方便的一种方法是将此模板添加到已存在的test代码模板中,该代码模板会生成新的测试方法。如果您将此模板更改为:

@${testType:newType(org.junit.Test)}
public void ${testName}() throws Exception {
    ${staticImport1:importStatic('org.hamcrest.Matchers.*')}
    ${staticImport2:importStatic('org.junit.Assert.*')}${cursor}
}

并在每次使用新的测试方法时使用它,您将永远不必关心再次手动添加hamcrest导入。

显示配置位置的图片: hamcrest code template

答案 1 :(得分:7)

我能找到的最接近的偏好是窗口下的那个 - >偏好 - > Java - >代码模板。展开代码部分并选择新建Java文件选项以查看新创建的Java文件的模式。然后,您可以点击修改添加导入,例如:

${filecomment}
${package_declaration}

import org.hamcrest.*;

${typecomment}
${type_declaration}

在所有情况下,您仍然需要编写使用org.hamcrest包的代码。或者,只需在添加使用该包的代码后按 Ctrl + Shift + O 组织导入。

答案 2 :(得分:5)

我建议您将org.hamcrest.Matchers.*添加到“收藏夹”(窗口 - &gt;偏好设置 - &gt; Java - &gt;编辑器 - &gt;内容辅助 - >收藏夹)。< / p>

这样,即使导入丢失,内容辅助也会提出静态成员,并在使用该成员时添加相应的导入。 这意味着您可以键入要使用的方法/字段,并让内容辅助自动添加导入。

答案 3 :(得分:0)

组织进口

现代IDE提供了一个名为Organize Imports的功能。使用此功能,您不再担心这些导入语句,IDE本身会管理这些导入。

你应该怎么做

编写代码时,只要您想让IDE组织导入,就应该按下快捷键。

键盘: Ctrl + Shift + O

菜单: Source Organize Imports

如何运作

IDE搜索您的代码并查找每个类并添加相应的import语句。还将删除未使用的导入类。

答案 4 :(得分:-5)

在Netbeans中,您可以浏览,工具 - &gt;模板 - &gt; java文件夹 - &gt; 您可以在打开页面时提供您需要的内容示例:将会是Java类,接口,枚举,异常等