Sergey Senkov
Sergey Senkov

Reputation: 1540

Is there any way to set breakpoints on all methods of a class?

Is there any way to set breakpoints on all methods of a given class?

I have a huge (2300 lines) legacy class and I need to set breakpoints on all method calls to understand how this mess works.

Upvotes: 85

Views: 25690

Answers (6)

Mirko Majkić
Mirko Majkić

Reputation: 67

As Andrey Lavrukhin suggested, there is Simple Toggle All Method Breakpoint, install it through Settings -> Plugins. Works perfectly.

Upvotes: 1

Andrey Lavrukhin
Andrey Lavrukhin

Reputation: 107

There is a plugin for idea: Simple Toggle All Method Breakpoint.

It allows you to breakpoint all methods / clear all method's breakpoints in one click from context menu on class in Project view.

Upvotes: 5

vtsamis
vtsamis

Reputation: 1474

You can follow the steps below:

  1. Run -> View breakpoints -> Add -> Java Method Breakpoints

  2. Class pattern -> full reference of your class (e.g., mypackage.MyClass)

  3. Method Name -> * (i.e., asterisk wild card)

Example

Upvotes: 65

Gavin Haynes
Gavin Haynes

Reputation: 1992

This is similar to Sergey Senkov's answer, but without hotkeys.

In the structure view, click on the first method. Repeat the following for each method:

  1. Context Menu Key
  2. M to toggle the method breakpoint.
  3. Down

Upvotes: 4

Sergey Senkov
Sergey Senkov

Reputation: 1540

I have discovered workaround :

1. I have set "Toggle Brakepoint" hotkey to Alt+Numpad 0.
2. After that you can click on first method
3. Use "Toggle Brakepoint"
4. Alt+Down - goto Next Method. ( Alt+Up - goto Previous Method. )
5. Repeat 3 step.

Upvotes: 14

Sean Landsman
Sean Landsman

Reputation: 7179

The only way you'll be able to do what you want is to set method breakpoints on each and every method with the class in question. You need to click on the left hand gutter next to the method - a little red circle with 4 dots will appear and you may get a warning saying method level breakpoints can impact performance. You can then further configure the breakpoint (by rightclicking on it, or select shift+F8) and set it so that it breaks on entry, exit or both

I'm afraid theres no way to do this in a single step/setting.

Upvotes: 0

Related Questions