VisualVMがJava8に対応していない(jdk8u102)
CPUプロファイリングを行おうと自作アプリケーションにVisualVMを接続したのですが、次のようなエラーが出て正しく動作しませんでした。
java.lang.NoClassDefFoundError: org/infinispan/util/concurrent/locks/impl/PerKeyLockContainer$$Lambda$156
lambdaという文字列が見えるので、Java8ラムダ関連なのだろうか、と思って検索してみたところ、次のバグが関連するようでした。
暫定対処としては、代わりにNetBeans付属のプロファイラを使用する、という手段が挙がっています。
試してみたところ、こちらでは確かに動作しました。
VisualVMと比較し計測開始までの準備が断然早く驚きました。
なお、機能的にはVisualVMの方がリッチだと思われます。