最短距離を行く(結果論)
JMeterをコマンドラインでインストール
brew install jmeter
==> Downloading https://homebrew.bintray.com/bottles/jmeter-2.13.yosemite.bottle
######################################################################## 100.0%
==> Pouring jmeter-2.13.yosemite.bottle.tar.gz
🍺 /usr/local/Cellar/jmeter/2.13: 1,859 files, 78M
JDK8をインストール
dmgのダウンロードは以下から。
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
"Accept License Agreement"にチェックを入れて
jdk-8u161-macosx-x64.dmg
をダウンロードします。
開いたら迷わず次へ次へでインストールは完了するはず。
JMeterを起動
jmeter
MacにJMeterを入れる手順はたったこれだけ。
あら簡単。
・・・・となるハズでした。
上記手順なら上手くいくはずですが、
私の場合、途中で Java 9 を入れてしまったり
紆余曲折あったので注意点として以降でまとめます。
MacでJMeterを使うまでの長い道のり(失敗手順)
JMeterをコマンドラインでインストール
brew install jmeter
==> Downloading https://homebrew.bintray.com/bottles/jmeter-2.13.yosemite.bottle
######################################################################## 100.0%
==> Pouring jmeter-2.13.yosemite.bottle.tar.gz
🍺 /usr/local/Cellar/jmeter/2.13: 1,859 files, 78M
ここまでは幸せでした。
JMeterを起動
jmeter
JRE9(最新版)をインストール
ダイアログの 詳しい情報...
からたどっていって以下のダウンロードページにたどり着きました。
http://www.oracle.com/technetwork/java/javase/downloads/jre9-downloads-3848532.html
jre-9.0.4_osx-x64_bin.dmg
こいつを落としてJRE9をインストールします。
JMeterを起動(2回目)
jmeter
考えた末、JDK9(最新版)をインストール
java
コマンドが使えないのが問題なのか?とJDKを入れることにしました。
http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html
jdk-9.0.4_osx-x64_bin.dmg
JMeterを起動(3回目)
jmeter
その結果・・・
Error: Java version is too low to run JMeter. Needs at least Java >= 1.6.0.
・・・・・・え?
なんなんすか? Java 9 入れましたよね?
深呼吸してからググると以下が見つかります。
https://stackoverflow.com/questions/47180767/apache-jmeter-error-java-version-is-too-low-to-run-jmeter
Java 8を入れ直すのは面倒そうなのでjar指定で起動する方法を試します。
JMeterを起動(4回目)
java -jar /usr/local/Cellar/jmeter/2.13/libexec/bin/ApacheJMeter.jar
これでようやく画面を開くことができました。
めでたし、めでたし。
・・・・とは行かなかったのです。
「テスト計画」を右クリックしても何も表示されない。。。なんで?
コンソールを確認すると・・・・
Uncaught Exception java.lang.ExceptionInInitializerError. See log file for details.
Uncaught Exception java.lang.NoClassDefFoundError: Could not initialize class org.apache.jmeter.gui.util.MenuFactory. See log file for details.
Uncaught Exception java.lang.NoClassDefFoundError: Could not initialize class org.apache.jmeter.gui.util.MenuFactory. See log file for details.
Uncaught Exception java.lang.NoClassDefFoundError: Could not initialize class org.apache.jmeter.gui.util.MenuFactory. See log file for details.
Uncaught Exception java.lang.NoClassDefFoundError: Could not initialize class org.apache.jmeter.gui.util.MenuFactory. See log file for details.
MenuFactoryがない。。。こりゃライブラリがダメダメだな。
JDK 8を入れ直すのが決定です。
JDK8をインストール
dmgのダウンロードは以下から。
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
"Accept License Agreement"にチェックを入れて
jdk-8u161-macosx-x64.dmg
をダウンロードします。
開いたら迷わず次へ次へでインストールは完了するはず。
はい、デジャヴュな気がします。
JMeterを起動(5回目)
jmeter
Error: Java version is too low to run JMeter. Needs at least Java >= 1.6.0.
こりゃJava 9のまんまですねorz
java -version
java version "9.0.4"
Java(TM) SE Runtime Environment (build 9.0.4+11)
Java HotSpot(TM) 64-Bit Server VM (build 9.0.4+11, mixed mode)
JDK9をアンインストール
https://yoshikawataiki.net/blog/java/post-287/
このサイトを参考に以下を実行しました。
まずはJDK本体をディレクトリごと削除します。
sudo rm -rf /Library/Java/JavaVirtualMachines/jdk-9.jdk
次に、JVMが8しかないことを確認します。
cd /Library/Java/JavaVirtualMachines/
ls
jdk1.8.0_161.jdk
java
コマンドでバージョン確認します。
java -version
JDKが8になりました。
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
JMeterを起動(6回目)
jmeter
これでようやく正常起動ができました。
「テスト計画」を右クリックでメニューもちゃんと出ます。
お疲れ様でしたorz
使い方
後ほど記事を書こうかと思います。
が、以下のリンクが役に立ちそうです。
https://qiita.com/digdagdag/items/8a4023ddc7d549fa8de8
まとめ
- JMeter + Java 9 は動きません。
- JMeterに必要なのはJREではなくJDKです。
- Java 9 を Java 8に戻すのは面倒です。