9

Eclipse は「保存時」アクションで明確なクラスを追加できますが、静的関数は解決されません。私は常にオートコンプリートを使用しているわけではありません。オートコンプリートをトリガーするために戻るのは面倒です。

たとえば、私はよく次のようなコードを書きます

printDebug("my value", my_obj);

自動的に追加したい

import static util.DebugOut.printDebug;

ctrl+space:繰り返しますが、(a)必要なもの、(b)クラスの自動インポートを探しているわけではありません

4

4 に答える 4

9

これがあなたが求めたものを正確に提供していないことは知っていますが、とにかく投稿したいと思いました。Eclipse テンプレートを使用して、達成しようとしていることを実行することをお勧めします。たとえば、Math.sin()静的にインポートされたかのように使用する場合は、次のテンプレートを使用します。

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

あなたの場合、次の手順に従います。

  • Windows->設定に移動します
  • Java->Editor->Templates の下で、"New..." をクリックします。
  • テンプレートに「printDebug」や「debug」などの簡単な名前を付けます。説明を入力してください
  • 以下のパターンを指定し、[OK]、[OK] をクリックします。
  • 使用するには、「debug」(または名前が何であれ) と入力し、その後に CTRL-スペースを押します。

パターン:

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

説明:importStatic変数は、解決可能で既存のインポートと競合しない場合、指定された静的インポートを追加します。 ユーザー (あなた) にこれらの値を実際の式に置き換えるように促し、タブで次の値に移動できるようにしますsomeStringsomeObject

これにより、最終的には自動インポートよりもはるかに高速になるでしょう。

編集

あなたの「実際の」質問に関しては、以下が関連していると思われるかもしれません。それは本質的に複製です。

于 2011-01-11T20:50:49.210 に答える
5

Window->Preferences->Java->Editor->Content Assist->Favorites を参照してください。

于 2011-01-11T21:19:50.053 に答える
2

IDEA のような他の IDE に切り替えることができます。ここでは、それが機能するか、次のような回避策を試すことができます。

たとえば、私はよく次のようなコードを書きます

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 に答える