プログラミング

なんとかしてvimでJava開発するためにやったこと

mmmuser

こんにちは、MMMサーバサイドエンジニアの柳沼です。
お世話になっております。
最近北海道に引っ越しました。

最近はSpringフレームワークを使ったWebAPIのスクラッチ開発をしていたのですが、
STS(Eclipse)が重い 問題に悩まされていました。
STSは非常にフルスタックなIDEなので、
軽さとトレードオフなのは仕方ないのですが、
それにしても重い。 結構消耗することが多かったので、
vimでどうすればJava開発がやりやすいかを考えてみました。

結論

STS(Eclipse)を使えばいいと思う。

やったことその1 vim-quickrunの導入

vim-quickrunは、vimからjavaのコンパイル及び実行ができるプラグインです。
2017年4月現在でも、最近までコミットされています。
このように、Javaファイルからコマンドモードで :QuickRun を入力すると

おもむろにウインドウが分割され、実行結果が表示されます。

Eclipseのリアルタイムコンパイルとは違いますが…
Javaはimportなどにうるさいですが、
これでコンパイルエラーに気付けるようになります。

その2 neosnippetで補完する

neosnippetはjava特化プラグインではありませんが、
非常に便利なので入れておくのがオススメです。
.vimrcいい感じに 設定した後、
<C-k> を叩くことで、こんな感じに補完してくれます。

snippetファイルは ~/.vim/bundle/neosnippet-snippets/neosnippet 内に
デフォルトがあり、
自分で新たなスニペットを作成することもできます。

その3 eclimを使う

eclim はEclipseの機能をネットワーク越しに叩くためのインタフェースです。
Xvfbから仮想サーバを立て、その中でEclipse、Eclimを立ち上げ、vimから接続します。
基本Eclipseなので、補完機能もリッチです。

何故Eclipseを使うべきか?

  • そもそもvimってこういうことなのでしょうか?
    UNIX思想「”do one thing, and do it well"; (1つのことだけをうまくやる)」に
    合致しているあのvimからは、ずいぶん外れた使い方のように感じました。
    vimでリアルタイムコンパイルをやろうとすることは正しいのか?という呵責に、
    開発者として苛まれずにはいられないものでしょう。

  • Eclipseは最強すぎる
    強力な補完、リファクタリング機能、賢いシンタックスハイライトなど、Eclipseはやっぱり頭がいいです。
    特に、CheckStyleやstepCounterを利用が容易であること、Maven・Gradleとの親和性が高いことなど、

  • さすがはEclipse先輩* と思うことはなんだかんだで多いです。Eclipseを使えば簡単なことを、わざわざvimでやる必要はないな…
    と感じました。

逆にEclipseでviコマンドを使う

vrapperを使えば、Eclipseのエディタをvimライクに使うことができます。
最初からこうすればよかった。

AUTHOR
デロイト トーマツ ウェブサービス株式会社(DWS)
デロイト トーマツ ウェブサービス株式会社(DWS)
デロイト トーマツ ウェブサービス株式会社はアマゾン ウェブ サービス(AWS)に 専門性や実績を認定された公式パートナーです。
記事URLをコピーしました