Show Local Variables in Debugger even with no Debug Info
December is just around the corner, and this means IntelliJ IDEA 13 is coming—with many cool new features and enhancements! One of these enhancements is the new debugger feature which shows local variables even when there is no debug information for the compiled classes. This is especially helpful when debugging third-party libraries or JDK sources compiled without corresponding debug information.
To test the new feature let’s go to Settings → Compiler → Java Compiler and turn off Generate debugging info (don’t forget to restore it afterwards):
Then you can recompile the class, add a breakpoint and start the Debug configuration.
Now when you’ve stopped at any scope with local variables defined, the IDE will try to guess how the variables correspond to slot numbers collected from the bytecode and will show matches in the Variables tab. The debugger shows only those slots that have been actually used from the method beginning up to the position at which the program has been suspended.
For method parameters IntelliJ IDEA can precisely map variable names from the source code. In these cases no slot number is shown. For other local variables, mapping may be inaccurate (e.g. if the sources differ from the bytecode) so the IDE shows the slot number together with the variable name. Also, some slots may be re-used for storing several local variables. In this case all possible variable names are shown for the slot.
This feature is already available in IntelliJ IDEA 13 EAP so why not go ahead and try it?
Develop with Pleasure!
Subscribe to Blog updates
Thanks, we've got you!
Import Postman Collections to the HTTP Client
We know that many of you use Postman collections and want to stay in the flow while working with them. This means staying inside IntelliJ IDEA and not switching to a different app. Great news! You can now effortlessly transform Postman collections into .http and use them in the HTTP Client …
What’s New in IntelliJ IDEA 2023.1 for Spring Developers
The IntelliJ IDEA 2023.1 release came packed with updates for Spring. This blog post will highlight the most noticeable changes, including full support for Lombok, a reworked Spring tool window, navigation for Spring Security rules, Spring Security 6 support, and more. Remember that these featur…
‘Quick’ Features in IntelliJ IDEA
A few IntelliJ IDEA features or actions include the term ‘quick’. Do they speed up certain processes? Let’s find out. In this blog post, I’ll cover what these features are, why you need them, and how you can use them. 1. Quick Lists If you have actions that you use regularly but don’t have shortcut…
5 Best Features for Profiling Java Code In IntelliJ IDEA
When it comes to apps functioning efficiently, there is always room for improvement. Fast, lag-free, smooth operation – what else can a Java developer dream of? However, when you aim for this level of perfection in your app, you will need a comprehensive toolset to monitor performance and identif…