Quick Answer
Manually add the JMeter path at
Preferences » Other Settings » JMeter » JMeter home directory
Long Answer
I wanted to be able to launch JMeter scripts from within IntelliJ IDEA. This is the process I went through to make this happen:
Install JMeter
Having already installed Homebrew, JMeter can be easily installed with the command
brew install jmeter
Install JMeter Plugin in IntelliJ IDEA
Preferences » PlugIns » Search for JMeter » Select JMeter plugin » install » restart IntelliJ
Configure JMETER_HOME
This is where the troubleshooting needed to start. For the quick solution, see the first section. Otherwise, this is the process I went through:
Ideally, one would want things to "just work" after installing JMeter and the plugin. Unfortunately, when I created my first JMeter Run Configuration in IntelliJ, I got the message in the dialog box:
Run Configuration Error: JMeter not found
I eventually found a dialogue box under
Preferences » Other Settings » JMeter
with a helpful indicator that
JMETER_HOME is used by default
Sure enough, when I ran the
env command in a Terminal, JMETER_HOME was not there.
To find out what my JMeter home directory was, I did the following in the Terminal
$ which jmeter
/usr/local/bin/jmeter
$ cat /usr/local/bin/jmeter
#!/bin/bash
exec "/usr/local/Cellar/jmeter/3.0/libexec/bin/jmeter" "$@"
So, based on some other information I gathered, the home directory was just above the "bin" directory.
My first attempt was to add the following line to my .bash_profile:
export JMETER_HOME=/usr/local/Cellar/jmeter/3.0/libexec
Sadly, I found this didn't work after rebooting and confirming that it showed up when the
env command was executed in the Terminal.
I eventually ran across
Setting global environment variables in IntelliJ IDEA and other test config goodies, from which I learned that environment variables are not automatically passed to GUI applications in Mac OS X. Nonetheless, Update 2 in the article looked promising.
I then added this line to .bash_profile:
launchctl setenv JMETER_HOME /usr/local/Cellar/jmeter/3.0/libexec
Again, to my frustration, I found that after rebooting and confirming that
launchctl getenv JMETER_HOME displayed the correct value in the terminal, that this only worked in IntelliJ when I started IntelliJ, quit completely, and then started it again. I have no idea why the environment variable only seems to get read on the second startup.
So, for my final answer, I just had to go with the manual solution of adding the JMeter home path as an Override in the dialogue box found at:
Preferences » Other Settings » JMeter » JMeter home directory