プログラムdeタマゴ

nodamushiの著作物は、文章、画像、プログラムにかかわらず全てUnlicenseです

Eclipseプラグイン開発: 開発環境の準備

Eclipse プラグイン開発 目次




 え?Eclipseプラグイン開発するつもりなんですか?まだ引き返せますよ?上司にVisual Studio Codeを提案した方がいいと思うよ?

 ちゃんと私は止めましたからね?

開発に必要なツール

  • 根性と泣かない心
  • GoogleとGithub
  • Eclipse IDE for Eclipse Committers
  • EASE
  • Maven

根性と泣かない心

 分からなくても泣かない。案外数ヶ月後にもう一度やってみたら分かったりする。

GoogleとGithub

 Eclipse開発で困難を極めるのは、目的を達成するために「何をどうすれば良いのか分からない」ことが多々あると言うことです。結論が「~~Interfaceを実装すれば良い」というだけのことであっても、「~~」にたどり着くのが結構大変。いや、マジで。

 とにかく、コーディング能力よりも検索能力が試されます。従ってGoogle先生は必須です。

 そして、GithubにはEclipse本体含む、多くのプラグインが公開されています。他のプラグインがどういう実装をしているのかを調べることは、非常に有用であり、重要な手がかりになります。私の場合、Githubの検索である程度当たりを付け、実際のソースコードはEclipse上で表示する、というやり方に落ち着きました。

参考URL

 増えてくると別ページに分離するかも。

 Eclipse Documentation HelpのPlatform Plug-in Developer Guide項目とひしだま氏のEclipseプラグイン開発はブックマークしておきましょう。
 ただ、Eclipse Helpのページ、サイドバーとかJavaScriptで動いてて非常に使いにくいんで、JavaScriptをoffにして目的のページだけ表示するようにした方が良いと思います。あと、ひしだま様は神様。

※EclipsepediaのSnippetが動かなくても泣かないコト

参考書籍


Eclipse Plug-in Development: Beginner's Guide - Second Edition (English Edition)

Eclipse Plug-in Development: Beginner's Guide - Second Edition (English Edition)

 Eclipseプラグイン開発そのものよりも、どっちかっていうとMavenのtychoの使い方を知るのにとても有用だった
 

Eclipse IDE for Eclipse Committers

 Eclipse Packages | The Eclipse Foundation - home to a global community, the Eclipse IDE, Jakarta EE and over 350 open source projects...からEclipseプラグインを開発する用のEclipseを用意しましょう。むろん、すでにEclipseを使っていて、それにプラグイン開発用プラグインをインストールしても構いません。

 特に気にしない場合、最新バージョンを選べば良いですが、対象のEclipseバージョンを限定、ないし最低バージョンが指定されている場合は、そのEclipseを選びましょう。APIが変わったり増えたりします。

EASE

 Eclipse Advanced Scripting Environment | The Eclipse Foundation

 Eclipseのプラグインで、Eclipseを実行している環境上でJavaScriptなどのスクリプト言語を動かすことが出来るプラグインです。ブラウザで言う、Firebugみたいな感じで私は使っていますが、プラグイン開発に慣れた人なら、EASEを使って、プラグインにしなくても高度なことがスクリプト的に実行できるとても便利なツールです。具体的には後に載せるYoutubeの動画を見ると分かりやすいと思います。

 Eclipseのプラグインを開発しているときに、APIがどういう動作をするのか説明読んでもよく分からないってことが結構ありますが、その動作確認のために、何度もEclipseを立ち上げ直すのはかなり面倒くさいです。EASEを使うと、そういったAPIの動作をその場で確認できます。

 ただ、v0.3まではかなり動作が不安定っていうか、しょっちゅうエラー出てました。v0.4でわりと結構使えるようになりましたが、それでも何かけっこー固まる。SWTのインスタンスにDisplayのThread以外からアクセスしようとすることが多々あるのよね…

 まだ現状動作が不安定なので、開発しているEclipseとは別のEclipseか、開発中のプラグインをテストしているEclipseで動かすのが無難でしょう。
 

Maven

Maven – Welcome to Apache Maven
Apache Maven3 (3.2.5) インストール手順 (Windows) | WEB ARCH LABO

 最近はMavenも廃れてGradleかと思うのですが、残念ながらGradleでのやり方知りません(オイ

 プラグインをビルドしたり配布する場合、Eclipseの機能をそのまま使っても良いですが、Mavenを使うことをお勧めします。特に、32bit環境、64bit環境、OS等によって配布するプラグインを変えたい場合はMavenが必須になります。