[英]How to get project infos from Eclipse “Open Call Hierarchy”?
我想獲取有關Eclipse中某些方法的調用鏈報告,因此我按Ctrl + Alt + H打開方法調用層次結構視圖,然后按numpad_multiply鍵展開所有節點。
問題是我需要單擊每個節點才能知道它屬於哪個項目。
有什么方法或插件可以獲取報告嗎?
(我將Eclipse 3.5 Galileo Java EE IDE用於Web開發人員。感謝您的任何建議)
回答我的問題,希望對您有所幫助。 (這不是一個聰明的方法,但是對我有用。)
准備:
Ctrl + Alt + H打開方法調用層次結構視圖,然后按numpad_multiply鍵以展開所有節點。
Ctrl + A選擇所有節點。
復制完全合格的類名稱,並將其保存到某個文件中(例如c:\\ tmp.txt)
刪除上述文件中的所有方法名稱。
例:
com.test.Class1.method1(Long, String)-> com.test.Class1
資源:
在同一工作區中創建一個新項目(類型為java)
將目標項目引用添加到新項目
循環上述文件的每一行(例如c:\\ tmp.txt),最后使用此代碼獲取類的位置:
/** * Get class file location * @param path : example: com.test.Class1 * @return : example: /D:/workspace/project/target/com/test/Class1.class * @throws ClassNotFoundException */ private static String getFileLocationByClassName(String path) throws ClassNotFoundException { if (path == null || path.length() == 0) return ""; Class<?> forName = Class.forName(path); URL resource = forName.getResource(forName.getSimpleName() + ".class"); if (!"file".equalsIgnoreCase(resource.getProtocol())) throw new IllegalStateException("Class is not stored in a file."); return resource.getPath(); }
注意,返回的[project / target]是項目名稱,僅此而已。
在開普勒上,窗口右側有一個向下箭頭(稱為“查看菜單”),您可以在其中選中“顯示文件名”
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.