Tuning IntelliJ IDEA
In this part:
- Tuning IntelliJ IDEA
- File 'idea.properties'
- Project and IDE Settings
- Directories Used by IntelliJ IDEA to Store Settings, Caches, Plugins and Logs
- Networking in IntelliJ IDEA
- Color-Deficiency Adjustment
Changing IntelliJ IDEA properties
IntelliJ IDEA makes it possible to change *.vmoptions
and idea.properties
files without editing them in the IntelliJ IDEA installation folder.
To create an empty idea.properties
file or to copy *.vmoptions
file, choose the or on the main menu respectively. Refer to the menu items description for details.
Managing *.vmoptions file
The location of the *.vmoptions
file depends on the operating system you are currently using:
- For Windows:
<IntelliJ IDEA installation folder>/bin/idea.exe.vmoptions
or<IntelliJ IDEA installation folder>/bin/idea64.exe.vmoptions
- For *NIX:
<IntelliJ IDEA installation folder>/bin/idea.vmoptions
or<IntelliJ IDEA installation folder>/bin/idea64.vmoptions
- For macOS, you need to make a copy of the
idea.vmoptions
file in the IDE preferences folder and then edit this copy. The reason is that the app bundle is signed and you should not modify any files inside the bundle.Since version 12.0.0:
The/Applications/IntelliJ Idea XX.app/bin/idea.vmoptions
or the/Applications/IntelliJ Idea CE XX.app/bin/idea.vmoptions
file must be copied to~/Library/Preferences/IntelliJIdeaXX/idea.vmoptions
or~/Library/Preferences/IdeaICXX/idea.vmoptions
Since version 14.0.0, the
/Applications/IntelliJ Idea XX.app/Contents/bin/idea.vmoptions
or/Applications/IntelliJ Idea CE XX.app/Contents/bin/idea.vmoptions
file must be copied to~/Library/Preferences/IntelliJIdeaXX/idea.vmoptions
or~/Library/Preferences/IdeaICXX/idea.vmoptions
.
For older versions, the settings are stored in
/Applications/IntelliJ IDEA <version>.app/Contents/Info.plist
.
To avoid editing files in the IntelliJ IDEA installation folder, do one of the following:
- From the main menu, choose to create a copy of the
idea.vmoptions
file in the user home directory. Refer to Edit Custom VM Options for details. - Copy the existing file from the IntelliJ IDEA installation folder somewhere and save the path to this location in the
IDEA_VM_OPTIONS
environment variable (IDEA64_VM_OPTIONS
for 64 bit systems) . - Copy the existing
<IntelliJ IDEA installation folder>/bin/idea.exe.vmoptions
or the<IntelliJ IDEA installation folder>/bin/idea64.exe.vmoptions
file from the IntelliJ IDEA installation folder into your user home directory.
Then edit this file in the new location.
If the IDEA_VM_OPTIONS
(IDEA64_VM_OPTIONS
for 64 bit systems) environment variable is defined, or the *.vmoptions
file exists, this file is used instead of the one located in the IntelliJ IDEA installation folder.
Example: Increasing the heap size
To increase IntelliJ IDEA heap size, you should copy the original idea.vmoptions
file to the above-mentioned location, and then modify the -Xmx
setting.
Managing idea.properties file
The idea.properties
file located in the bin
directory of the IntelliJ IDEA installation folder should not be edited. Instead of editing the original idea.properties
file, create an idea.properties
file in the following location, open it for editing and add the required properties:
- For Windows:
%USERPROFILE%\.IntelliJIdeaXX
or%USERPROFILE%\.IdeaICXX
- For *NIX:
~/.IntelliJIdeaXX
or~/.IdeaICXX
- For macOS:
~/Library/Preferences/IntelliJIdeaXX
or~/Library/Preferences/IdeaICXX
Example: Changing case of unicode literals
IntelliJ IDEA allows defining whether non-ascii characters should use literals like '\u00AB'
or '\00ab'
.
This behavior is controlled by the system property idea.native2ascii.lowercase
. By default, upper case characters are used.
If it is desirable to use lower case characters, create the file idea.properties
in the location specified above, open it for editing and add the following line:
idea.native2ascii.lowercase=true
Specifying custom JDK, properties or vmoptions files across platforms
A custom JDK, *.properties
and *.vmoptions
files are specified across platforms in a unified way.
All the launchers look at the following environment variables: