IntelliJ IDEA Tips & Tricks

IntelliJ IDEA how2pro 2020: Putting It All Together

The end of 2020 is just around the corner. What a year! Let’s look back at the past 12 months and recap the best IntelliJ IDEA: how2pro tips and tricks.

IntelliJ IDEA How2Pro - Conseils et astuces pour une utilisation optimale d'IntellI IDEA


Java 16 will soon be available. It’s very likely that you already use one of the new Java versions in your applications. If you’re still in doubt as to whether you should switch from Java 8, try watching the Life Beyond Java 8 presentation from JetBrains Technology Day for Java by Trisha Gee. And to make sure it is a smooth transition, you can always use the Dependency Structure Matrix (DSM) analysis in IntelliJ IDEA Ultimate.

With this tool, you can find and fix all cyclic dependencies and split packages that are not allowed in modular Java. If you have never heard of DSM before, read our blog post DSM: Prepare Your Application for Modularity.

When it comes to Java, another essential tool in IntelliJ IDEA that many people are not even aware of is the Java bytecode decompiler. This is a built-in feature that allows you to read compiled bytecode as if it were human-readable Java code. Not only can the decompiler convert bytecode to Java code, but it can also be used to debug it.

Speaking of debugging. If you are ever faced with a very tricky issue or you need to unscramble the way a program operates, you should check out the Dataflow to/from here feature. It allows you to identify which values are possible at a given stage of data processing, detect potential runtime errors before they happen, and help you optimize your code by removing redundant checks, conditions, and so on.

Group by nullness tab in Analyze Dataflow dialog

Local history

If you had to put together a list of the most useful features in IntelliJ IDEA, which one feature would be your top pick? For us, it’s easy: we’d almost definitely put local history there as this feature has helped us more times than we care to mention, restoring what we thought was lost forever.

Local history in IntelliJ IDEA
Local history is your personal built-in version control system. It automatically records your project’s revisions triggered by various events as you edit code, run tests, deploy applications, and so on. We have a blog post that explains a way of Using Local History to Restore Code Fragments or Deleted Files and a comprehensive demo of the feature in the IntelliJ IDEA. Personal VCS with Local History video.


The IDE interface can seem overwhelming at times, but we have created a few shortcuts for getting around IntelliJ IDEA.

Double Shift opens the Search Everywhere dialog in which you can enter a query to search inside your project. You can include non-project items in your search and even enable or disable options in the settings.

Pressing Alt+Enter on Windows and Linux or ⌥+Enter on macOS in the editor brings up context actions. They incorporate quick-fixes and suggestions that can correct and improve your code, add code elements, upload missing components, and create classes and methods.

If you want to learn some more really useful shortcuts, read about the Top 15 IntelliJ IDEA Shortcuts or watch the Top 5 IntelliJ IDEA Navigation Shortcuts video.


IntelliJ IDEA offers nearly endless customization options covering both its functionality and its appearance. To make the IDE look and behave the way you like, you can set a custom user interface theme, rearrange the menus and toolbars, and use various viewing modes to help you with different situations.

Find out more in our blog post UI Secrets: Customize the Appearance of IntelliJ IDEA.

Built-in tools

Spring Boot is a very popular framework these days. If you develop web services using this framework, you can test requests to specific endpoints in the integrated HTTP client in IntelliJ IDEA Ultimate.

The HTTP client is built directly into the editor and it is purely text-based. It provides full coding assistance for your HTTP requests, including highlighting, completion, refactorings, and inline documentation. You can generate HTTP requests from the source code of your RESTful web service.


If you have a set of actions that you use regularly, you can create a short list of your favorite actions and assign a shortcut to it. Such lists are called Quick Lists. All you need to remember is one simple keyboard shortcut, plus a number for each action.

Classes, files, folders, or packages that you often need can be added to your Favorites list. You can also automatically add bookmarks and breakpoints to it after you place them in your code. If you want to learn more about how you can simplify your workflows, read our blog post Keep Shortcuts Close, but Quick Lists and Favorites Closer.

For those of you who use the terminal instead of menu options, we have the Run Commands using IDE feature. Whenever you type a supported command in the IntelliJ IDEA terminal, the IDE will highlight it and let you view the results in the GUI.

You might find it useful as the output in the IDE tool window is sometimes more comprehensive and easier to understand than the output in the terminal. For the terminal lovers, we also have the IntelliJ IDEA. Using the Terminal video. It breaks down the terminal features and unravels a couple of useful tricks.

That’s about it for now. For the upcoming year, IntelliJ IDEA: how2pro is preparing lots of exciting new content with tips and tricks that uncover useful, yet sometimes overlooked, features in IntelliJ IDEA. And as we’re doing so, we want to ask you – what kinds of tips do you find most useful? Would you like to learn more helpful shortcuts? Would you like to get some insights on improving your workflows? Let us know in the comments below.

Happy developing!

image description