IntelliJ IDEA Tip: Configuration Profiles
However, the “profiles” can easily be emulated. In IntelliJ the settings are stored under USER_HOME/.IntelliJIDEAxx folder. There you will find all the settings, plugins, and other stuff related to your current IntelliJ installation. This directory is actually the current “profile” of your IntelliJ installation. In IDEA_HOME/bin/idea.properties file there is a number of properties that refer to the settings directory:
idea.config.path=${user.home}/.IntelliJIdea/config idea.system.path=${user.home}/.IntelliJIdea/system idea.plugins.path=${user.home}/.IntelliJIdea/config/plugins idea.log.path=${user.home}/.IntelliJIdea/system/log
So in order to create a new profile you need to copy the settings directory from USER_HOME/.IntelliJIdea to USER_HOME/.MyIntelliJ and in the configuration file that points to the settings directory you need to change to pointers accordingly to:
idea.config.path=${user.home}/.MyIntelliJ/config idea.system.path=${user.home}/.MyIntelliJ/system idea.plugins.path=${user.home}/.MyIntelliJ/config/plugins idea.log.path=${user.home}/.MyIntelliJ/system/log
Assume, I will keep the configuration in MyIntelliJ.properties file. Now, on the startup, IntelliJ just needs to know, which properties file to use. As the documentation says, we can either set up IDEA_PROPERTIES environment variable to specify custom location of this properties file, like
set IDEA_PROPERTIES=c:\config\MyIntelliJ.properties
or in unix:
export IDEA_PROPERTIES=/home/anton/MyIntelliJ.properties
In the environment variable isn’t specified, the configuration file is searched according following sequence (first successful is used):
- USER_HOME/
- IDEA_HOME/bin
This way, it is pretty much possible to organize the profiles for IntelliJ, however, it would be cool to have such possibility out of the box via UI configuration.
Reference: IntelliJIDEA Tip: Configuration Profiles from our JCG partner Anton Arhipov at the Code Impossible blog.