Знайдіть виклики методів у проекті Eclipse


83

У мене є клас X, що містить метод myMethod (). Я хотів би знайти місця у всіх проектах у моїй поточній робочій області, де викликається цей myMethod (). Я не можу використовувати будь-які функції пошуку, оскільки існує кілька класів з myMethod (), і він не є статичним. Отже, мені потрібно знати назву об’єктів цього класу, що неможливо без вивчення проектів вручну.

Чи є у Eclipse рішення для цього?


2
Дивіться також: stackoverflow.com/questions/4650021/…
Тіло

Відповіді:


115

Перейдіть до методу в X.java та виберіть у контекстному меню пункт Відкрити ієрархію викликів.


11
Я цього не знав. Я використовував CTRL-Gярлик, і він не працював, оскільки це не призведе до того, що розглянутий метод буде викликаний з іншого методу в тому ж класі. Будь-які ідеї, чому це? ...не зважай! CTRL-SHIFT-Gдля пошуку посилань, CTRL-Gдля пошуку декларацій! : S
Xonatron

4
в моєму затемненні тут (марс) ярлик ctrl + alt + h :)
thekucays

Я спробував усе, що міг знайти, Ctrl + Shift + G, ctrl + Alt + H і ще багато, але все показало мені "Ресурс не на шляху збірки проекту Java". Отже, жодна робота не працює. Хтось запропонував клацнути правою кнопкою миші на проекті у дереві та вибрати "побудувати шлях" із контекстного меню, але я цього не бачу. Я на фотоні затемнення. Дякую
піксель

51

Виберіть mymethod()і натисніть ctrl+ alt+ h.

Щоб побачити детальну інформацію про будь-який метод, ви можете скористатися цим, вибравши конкретний об'єкт або метод і клацнувши правою кнопкою миші. ви можете побачити " OpenCallHierarchy " ( Ctrl+ Alt+ H). Як і багато інших інструментів, що полегшують вашу роботу, як " Швидкий контур " ( Ctrl+ O) для перегляду типів даних та методів, оголошених у певному файлі .java.

Щоб дізнатись більше про це, зверніться до цього Посібника з затемнення


3
... що відкриває ієрархію викликів.
Xonatron

Я спробував усе, що міг знайти, Ctrl + Shift + G, ctrl + Alt + H, Ctrl + O і ще багато, але все показало мені "Ресурс не на шляху збірки проекту Java". Отже, жодна робота не працює. Хтось запропонував клацнути правою кнопкою миші на проекті в дереві та вибрати "контекстний шлях" у контекстному меню, але я цього не бачу. Я на фотоні затемнення. Дякую
піксель

10

Ви також можете шукати певні методи. Наприклад, якщо ви хочете шукати isEmpty()метод класу рядків, вам потрібно дістатися до - Search -> Java -> type java.lang.String.isEmpty()і в опції 'Search for' використовувати метод .

Потім можна вибрати потрібну область.


9

Перемістіть курсор до назви методу. Клацніть правою кнопкою миші та виберіть у розкривному меню посилання> Проект або Довідники> Робоча область.


5
select method > right click > References > Workspace/Project (your preferred context ) 

або

(Ctrl+Shift+G) 

Це покаже вам подання пошуку, що містить ієрархію класу та методу, які використовують цей метод.


3

Клацніть правою кнопкою миші на методі та клацніть на Відкрити ієрархію викликів

eclipse ієрархія викликів правою кнопкою -


Я спробував усе, що міг знайти, Ctrl + Shift + G, ctrl + Alt + H і ще багато, але все показало мені "Ресурс не на шляху збірки проекту Java". Отже, жодна робота не працює. Хтось запропонував клацнути правою кнопкою миші на проекті у дереві та вибрати "побудувати шлях" із контекстного меню, але я цього не бачу. Я на фотоні затемнення. Дякую
піксель

@pixel - Будь ласка, виконайте "mvn clean install". Потім спробуйте ще раз. Можливо, це відбувається через те, що ваш проект неправильно побудований.
Манджит,
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.