Javaプログラム実行時にタイトルのようなメッセージが出るときの対処法
Java SE 7では最新版を使えば大丈夫なようですが、OracleJDK Java 8の最新版である8u131(2017/5/28時点)では修正がまだ取り込まれていないようなので、とりあえずの対処法を書きます。
対処法の一覧(下記参考リンクより)
以下の四つの対処法が紹介されています。
- Help -> Edit Custom Propertiesで
idea.no.launcher=true
を設定する。- カスタムプロパティを設定していない場合は設定ファイルを作るかどうか聞かれます。
- JetBrainsがパッチを当てたJDKを使う
- Java9またはJava 8u152のbetaを使う
- コンソールの見た目の問題で動作自体には影響しないので無視する
1つ目の方法は警告の原因となっているlauncher自体を切ってしまい、graceful exitやスレッドダンプなどの機能もオフになってしまうそうです。
私の場合は、2つめの方法で改善しました。File -> Project Structure... 内のProject SDKsでここからダウンロードできるJDKを指定してあげれば警告文は出ません。
3つ目にも書かれている通り、すでにこのバグの修正はJava 9または8u152に取り込まれており、リリースされればそちらを使えば根本的に解決する見通しです。
参考
YouTrack objc: Class JavaLaunchHelper is implemented in both ..." warning in Run consoles
stackoverflow objc[3648]: Class JavaLaunchHelper is implemented in both