前書きの前書き
この記事はMicroAd (マイクロアド) Advent Calendar 2019で公開しようとして書ききれなかった内容を再編集したものです。
そのため、Intellij IDEA(Ultimate)のバージョンが若干古く、当該バージョンで踏んだバグの情報も残っていますが、現状そのバグが残っているか等は確認していません。
前書き
Intellij IDEA(Ultimate)のRun/Debug Configurationsでは、Java/Kotlinのビルド・実行だけでなく、様々な設定を行うことができます。
この記事ではメイン以外のタスク実行を設定する例として、Before launchによる逐次実行1を触ってみます。
記事本編にはあまり関係ありませんが、プロジェクトは以下の記事から引き続き利用します。
基本設定
Run/Debug Configurationsウィンドウの右下にはBefore launch: Build, Active tool windowという項目が必ず表示されます。
ここに追加したタスクはメインで設定したタスクの前に上から実行されます。
画像の通り、この項目にはRun/Debug Configurationsで設定できる内容が同様に設定できます。
また、Run Another Configurationを選択することで、Run/Debug Configurationsで設定した内容を実行することもできます。
これを設定することで、実行前にシェルスクリプトを走らせたり、Dockerを起動したりといった、複数のコンフィグを組み合わせた複雑な挙動を実現することができます。
ただし、逐次実行の途中であっても実行したタスクが落ちた時点で全ての実行はストップするので、その点には注意が必要です。
補足: Multirun Pluginについて
Before launchが逐次実行なのに対して、並列で何かを実行したいということも有ると思います。
そういった時にはMultirun Pluginが利用できます。
このPluginを追加することで、画像のように、追加可能なコンフィグにMultirunが加わります。
-
いくつか挙動を当たった限り逐次実行で正しいはずですが、
IntelliJ IDEA 2019.2.3において前のタスクの終了前に次のタスクが実行される現象が発生したため(IDEを再起動したりしている内にローカルで再現しなくなった)、注意が必要かもしれません。 ↩

