DISCLAMER: This isn’t some free advertising for JetBrains, this is only about a developer sharing tips about IntelliJ.
Without a doubt, the most important developer tool is the development environment (called IDE).
My favourite and the one I work with every day at work is IntelliJ (Ultimate version). In this article, I’ll share with you all the tips and tricks I’ve gathered from my experience and from my colleagues. This might help you master this tool and make your work easier.
Don’t leave if you don’t use IntelliJ or even if you hate it! I bet you can apply many of these tricks to your favourite IDE.
Table of Contents
- Convert microservices into modules
- Have effective code reviews
- Revert multiple commits
- Safety checks for Java devs
- Discuss with your database
- Last piece of advice: run dashboard, marked directories, scratch files, install plugins, overuse shortcuts
Convert microservices into modules
If you work on many projects or your project implements a microservice architecture, you have independent projects in many directories.
This means you have to create one IntelliJ project for each project directory. Yet, you can’t have more than one project in a single IntelliJ window.
Creating modules is the solution. The idea is to create one IntelliJ project with independent modules.
You can manage all modules in the Project Structure window (File > Project Struct
ure). They’re also accessible by right-clicking on a single module and choosing Open Module Setti
ngs.
Have effective code reviews
I hope you’re using a version control system such as Git or Subversion. If you aren’t, you should consider learning more about version control systems!
IntelliJ provides a good integration for VCS, especially for code reviews. If your project contains many repositories within your modules, it’s possible to visualize every commit in one place.
First, check if version control knows your directories:
Then, go check this tool window:
You only have to enable the Show Root Names
option to see the modules’ names on the left. The Paths filter allows you to filter using module names. Useful when you work on projects with a microservice architecture!
The right side of this window shows every modified file from the selected commit. You can click on Show Diff
to open a new window and visualize modifications for each file.
If you need to review multiple commits at the same time, select the commits to review (hold thectrl
key) and click onShow Diff
.
Revert multiple commits
For some reason, you may need to revert a few commits in your project. If you’re not used to doing it, you can get into trouble.
Revert a commit is quite simple: right-click on it and choose revert. Once you eventually fix the conflicts, a commit popup will come up. If you only revert one commit, do as usual without checking the Amend commit
option.
But if you need to revert multiple commits, you have to be a bit more clever. The idea is to create one commit which reverts all commits at once — begin with the most recent to avoid conflicts.
When you revert a commit, you must commit the changes. It means you can’t perform multiple reverts and finally commit the result. My solution is to commit the first revert and then check the Amend commit option to squash the other reverts into this first commit.
Safety checks for Java devs
IntelliJ comes with a lot of features for Java, including Maven integration. It’s highly configurable, but before exploring, you need to check some settings.
- Project SDK (File > Project Structure)
- Java compiler version for each module (File > Settings > Java Compiler)
- Maven configuration (File > Settings > Maven)
For Maven configuration, consider checking Always update snapshots
if you work on microservice architectured projects.
Don’t forget to also check the Ignored Files section to make sure IntelliJ doesn’t ignore your module pom.xml
. If your module is still not recognized as a Maven project, right click on your pom.xml
and Add as Maven Project
.
Sometimes you can compile using the terminal, but IntelliJ finds errors because of the Maven dependencies. To fix that, right click on the module Maven > Rel
oad and then right click again to Rebu
ild the module.
Discuss with your database
I tried some clients to deal with databases, but using IntelliJ is far better when you’re also writing code.
You can explore your database without writing any code using the tree explorer. Then, if you double-click on a table, you can also filter results, perform some CRUD operations, and even export the data in many formats such as SQL, CSV and HTML.
As you might think, SQL files support syntax highlighting, autocomplete and the ability to run queries from the file. The good part is that you can write multiple queries in your file but only run highlighted queries with Ctrl + Enter
.
Last pieces of advice
Run dashboard
It’s possible to run your applications from IntelliJ, but you need to create a Run Configuration
first. Once some process is running you’ll be able to list them all on a dashboard.
To enable the Run Dashboard, open the Run Configuration popup and select Defaults
. Then, you can add which kind of configuration can appear in your run dashboard.
Marked directories
When you do a right-click on a directory, you have the option to mark it as Source, Test, and even exclude it.
It’s useful, because you can hide excluded files in your project and also filter search results so that they don’t display tests (in scope > Production Files).
Scratch files
Creating temporary files is very convenient to test something outside of your project. IntelliJ supports this feature (shortcut: Ctrl + Alt +Maj + Insert) with many kinds of files such as JavaScript and SQL. Plugins can help you to run those files. I recommend you to try Quokka which runs JS scratch files.
Install plugins
Plenty of plugins exist for IntelliJ — almost every popular framework and language has one. You should install those plugins and check if they help you in your daily work.
For instance, check Advanced Java Folding which might be interesting for Java developers. You can also set up a particular font to easily distinguish similar characters such as l 1 I
and O 0 o
. I’d recommend Source Code Pro and Hack which help avoid confusing similar characters.
Overuse shortcuts
shift + shift
searches everywhere for a filectrl + shift + E
for recently opened filesctrl + shift + F
searches a text in the path (use the module filter)ctrl + click
jumps to variable/function declarationctrl + f12
searches variable/function in filealt + F7
lists variable/function usages
Thanks for reading! This was a compilation of tips and tricks I’ve learned with experience and also with help from my colleagues. I hope you found something helpful for your daily work with IntelliJ!
If you found this article useful, please click on the ? button a few times to make others find the article and to show your support! ?
Don’t forget to follow me to get notified of my upcoming articles ?
Check out my Other Articles
➥ JavaScript
- React for beginners series
- How to Improve Your JavaScript Skills by Writing Your Own Web Development Framework
- Common Mistakes to Avoid While Working with Vue.js