Java のコードは流石に vim で書くよりは IDE を使ったほうがいいよな、と思ったので試してみたメモ。対象は Java な Embulk のプラグインの開発で、JRuby なプラグインの開発の場合はまだ試していない、というか vim でいいかなと思っていて試していない。
補完利いてブレークポイントが貼れるようになったので最高。
IntelliJ IDEA のインストール
省略します。https://www.jetbrains.com/idea/ へどうぞ。
JAVA_HOME を調べておく必要があるので、Mac の場合
/usr/libexec/java_home -v 1.8
のようにして調べておくと良い。
プロジェクトの読み込み
IntelliJ を起動して、Open を選び、プラグインのディレクトリを開くと Gradle プロジェクトとして認識されるはずなので、あとは以下のように設定すると良い.基本的にはこれだけ。
- Use auto-import をチェック(お好みで)
- Create directories for empty content roots automatically (お好みで)
- Use default gradle wrapper (recommended) をチェック
- Gradle JVM に調べておいた JAVA_HOME のパスを設定
開くと gradle wrapper を使って gradle が落とされてきて、gradle を使って依存ライブラリも落とされて来て、補完なんかも利くようになるはず。
ビルドタスクを作る
./gradlew classpath
や ./gradlew test
などを IntelliJ から実行できるようにする。
Run > Edit Configurations
-
Gradle
例えば gradlew test
相当を作りたいなら、Tasks に test
と入れる。
Ctrl + Option + r でビルドタスク一覧が出て来るので選択して走らせる。
実行タスクを作る
Embulk をお試し実行するタスクを作る。
同じく Run > Edit Configuration から、今度は + > JAR Application を選択する。
embulk のインストール先(README通りであれば、~/.embulk/bin/embulk
) と引数を指定したタスクを作る。自分は example.yml を置いているので、それを指定する。
これで、そのタスクを実行すれば embulk run -I lib example.yml
を実行できるようになった。
TIPS: VM options に -XX:+AggressiveOpts -XX:+TieredCompilation -XX:TieredStopAtLevel=1 -Xverify:none
を入れておくと起動が早いかもしれない。embulk -J-O run
と実行した時に Java に渡される最適化をオフにするオプション
git を使う
最初から Git Plugin が入っているようで、VCS メニューから、Commit などを選択できた。
ブレークポイントを貼る
行の所をクリックすると赤丸が出る。
Debug モードでタスクを実行すれば良い。例えば、Ctrl + Option + d で Debug 実行できる
右上の Run メニューの虫マークとか。
走らせるとブレークポイントを貼った行で止まって、Debug コンソールが出るので Step Over で次の行に進んだりすればよい。
特定のテストだけ走らせる
UnitTest のコードにカーソルをあてて Ctrl + Option + r で Run メニューを出す。
この例では testNotEquals
だけ走らせる選択肢が増えていることがわかる。