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 systems:
<IntelliJ IDEA installation folder>/bin/idea.exe.vmoptions
or<IntelliJ IDEA installation folder>/bin/idea64.exe.vmoptions
- For *NIX systems:
<IntelliJ IDEA installation folder>/bin/idea.vmoptions
or<IntelliJ IDEA installation folder>/bin/idea64.vmoptions
- For OS X systems,
you have to make a copy of the
idea.vmoptions
file in the IDE preferences folder and then edit this copy. The reason is that app bundle is signed and you should not modify any files inside the bundle.Since version 12.0.0:
The file/Applications/IntelliJ Idea XX.app/bin/idea.vmoptions
or/Applications/IntelliJ Idea CE XX.app/bin/idea.vmoptions
should be copied to~/Library/Preferences/IntelliJIdeaXX/idea.vmoptions
or~/Library/Preferences/IdeaICXX/idea.vmoptions
Since version 14.0.0, the file
/Applications/IntelliJ Idea XX.app/Contents/bin/idea.vmoptions
or/Applications/IntelliJ Idea CE XX.app/Contents/bin/idea.vmoptions
should be copied to~/Library/Preferences/IntelliJIdeaXX/idea.vmoptions
or~/Library/Preferences/IdeaICXX/idea.vmoptions
.
For the 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, one should:
- Do one of the following:
- Use the main menu command to create a copy
of the
idea.vmoptions
file in the user home. 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 environment variable
IDEA_VM_OPTIONS
. - Copy the existing file
<IntelliJ IDEA installation folder>/bin/idea.exe.vmoptions
or<IntelliJ IDEA installation folder>/bin/idea64.exe.vmoptions
from the IntelliJ IDEA installation folder into the location under your user home.
- Use the main menu command to create a copy
of the
- Edit this file in the new location.
If IDEA_VM_OPTIONS
environment variable is defined, or the
*.vmoptions
file exists, then 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 file idea.properties
, located in the bin
directory of the IntelliJ IDEA installation folder, should not be edited. Instead of editing the original
idea.properties
, create file idea.properties
in the location specified below, open it for editing and add the required properties.
So, depending on your platform:
- For Windows: in
%USERPROFILE%\.IntelliJIdeaXX
or%USERPROFILE%\.IdeaICXX
- For *NIX: in
~/.IntelliJIdeaXX
or~/.IdeaICXX
- For OS X: in
~/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: