とにかくEclipseに静的インポートを自動的に検索させる方法はありますか?たとえば、ようやくJunit 4にアップグレードしたので、次のように書きたいと思います。
assertEquals(expectedValue, actualValue);
ヒット Ctrl + Shift + O Eclipseに追加してもらいます:
import static org.junit.Assert.assertEquals;
たぶん私はあまりにも多くを求めています。
私はEclipse Europaを使用していますが、これにはFavorite設定セクションもあります:
ウィンドウ>設定> Java>エディター>コンテンツアシスト>お気に入り
私の場合、次のエントリがあります(追加するときは「新しいタイプ」を使用し、.*
を省略します)。
org.hamcrest.Matchers.*
org.hamcrest.CoreMatchers.*
org.junit.*
org.junit.Assert.*
org.junit.Assume.*
org.junit.matchers.JUnitMatchers.*
これらの3つ目以外はすべて静的インポートです。それらをお気に入りとして持つことで、「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->エディター->コンテンツアシスト
静的インポートを使用する(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
上記に新しいタイプとして追加すると、自動的に。*がパッケージに追加されます。
Eclipse 4.9では、クイックフィックスを使用して既存の呼び出しを静的にインポートできます。
ユーザーが静的フィールドアクセスと静的メソッドを変換して静的インポートを使用できるようにする新しいクイックフィックスが実装されました。すべての出現を同時に置き換えることもできます。
静的インポートのショートカット:CTRL + SHIFT + M
定数を選択して、入力します
Ctrl + 1 (quick fix)
[静的インポートに変換]を選択します。ドロップダウンから。
「クイックフィックス」にはエラーではありませんが、オプションがあります。