9

Eclipse 可以通过“on-save”操作添加明确的类,但它不会解析静态函数。我并不总是使用自动完成功能,回去触发它很麻烦。

例如我经常写代码

printDebug("my value", my_obj);

我希望它自动添加

import static util.DebugOut.printDebug;

注意:重申一下,我不是在寻找(a)任何需要的东西ctrl+space,(b)类的自动导入

4

4 回答 4

9

我知道这并不能完全满足您的要求,但我想我还是会发布它。我建议使用 Eclipse 模板来完成您想要完成的工作。例如,如果我想像Math.sin()静态导入一样使用它,我将使用以下模板:

${:importStatic(java.lang.Math.sin)}sin(${cursor});

对您而言,您需要执行以下步骤:

  • 转到 Windows-> 首选项
  • 在 Java->Editor->Templates 下,单击“新建...”
  • 快速命名模板,例如“printDebug”或“debug”。填写描述
  • 指定下面的模式,然后单击确定、确定。
  • 要使用,请键入“debug”(或任何名称),然后按 CTRL-Space。

图案:

${:importStatic(util.DebugOut.printDebug)}printDebug(${someString},${someObject});

说明:如果importStatic变量可以解析并且不与现有导入冲突,则该变量将添加指定的静态导入。 someStringsomeObject提示用户(您)用真实表达式替换这些值,并允许您跳到下一个。

有了这个,您最终可能会发现它比自动导入要快得多。

编辑

至于您的“实际”问题,您可能会发现以下内容是相关的。它本质上是重复的。

于 2011-01-11T20:50:49.210 回答
5

请参阅窗口->首选项->Java->编辑器->内容辅助->收藏夹。

于 2011-01-11T21:19:50.053 回答
2

您可以切换到其他 IDE,例如 IDEA,它可以正常工作,或者尝试像这样的解决方法:

例如我经常写代码

util.DebugOut.printDebug("my value", my_obj);

光标指向 printDebugctrl-shift-m

添加了导入:

import static util.DebugOut.printDebug;
于 2011-04-02T08:47:25.783 回答
-1

请参阅首选项->Java->代码样式->组织导入。在那里您可以设置静态导入,以便自动添加导入语句

于 2011-03-25T04:33:39.187 回答