2010-02-04 57 views
6

是否有一個Eclipse插件,可以讓您基於項目文件的Java AST(抽象語法樹)進行搜索?通過「Java搜索」功能似乎並不涵蓋樣病例:基於AST的Eclipse搜索

「給我聲明爲‘X’中的所有類的所有字段」

我能想象更多的可能性,將開闢與一個基於AST的搜索,但我甚至不知道這樣的插件是否會有實際的性能。

更新:正如Kevin所指出的那樣,Java搜索功能確實覆蓋了我提到的用例。我仍然很好奇,不管是否有人編寫了允許任意類型的AST搜索的插件,例如。 「獲取所有的字符串連接」(InfixExpression與+運算符和字符串文字操作數)

回答

1

給我在所有的類中聲明的類型 「X」的所有字段

,我不知道還有什麼你腦子裏想的,但我相信你可以通過執行實現這一目標的具體搜索以下內容:

  • 開放式X(按Ctrl-Shift-T鍵)
  • 突出的類名
  • 按Ctrl-H搜索
  • 搜索類型/匹配位置 - >字段類型
+0

這似乎只返回類型本身的聲明。 – dcstraw 2010-02-04 20:36:57

+0

對不起。我編輯了條目以使用「匹配位置」過濾器而不是「聲明」。 – Kevin 2010-02-04 20:37:34

+0

啊,非常好,謝謝。我以前從未嘗試過匹配位置選項。至少涵蓋了我提到的用例。 – dcstraw 2010-02-04 20:41:52

1

這不是你在尋找什麼,但nWire for Java可以給你很多的信息,這是來源於AST。它還具有全文搜索功能,可以搜索任何類型,方法,字段等。一旦找到了要查找的內容,點擊就會顯示該組件的所有關聯。

查看演示here