eclipseでプラグインが認識されない場合のチェックリスト

eclipseのプラグインを開発している際、デバッグ実行している時はいいのだが実際にjarにしてフォルダに格納した時にプラグインを認識しないことがある。そういうときのチェック方針を適当にメモ。

1. jarファイルが正しい位置に格納されているか?

eclipseプラグインのjarファイルは以下のフォルダ配下に配置出来る。

  • eclipseの実行ファイルがあるフォルダと同じ階層にあるpluginsフォルダ配下
  • eclipseの実行ファイルがあるフォルダの配下のdropins/[フォルダ名]/plugins配下

2. 依存関係が正しく解決されているか?

WindowsならHelp->About eclipse、Macならeclipse-> About eclipseメニューを開き、Installation Detailsボタンを押す。Installation DetailsウィンドウのPlug-insタブから追加したいプラグインが追加されているかを確認する。

f:id:mi_kami:20130701233619p:plain


もし追加されていなければ、依存関係が正しく追加されていない可能性がある。

f:id:mi_kami:20130701233908p:plain

開発中のMANIFEST.MFのRequire-Bundle:に書かれているプラグインが実行環境で追加されていることを確認する。上の画像のようにエディタのDependenciesタブからも編集できる。

3. build.propertiesが正しく設定されているか?

必要であればjarを解凍して、plugin.xml、META-INF/MANIFEST.MF、.classファイルの3つが正しく格納されていることを確認する。もし書いてなければbuild.propertiesのbin.includesに以下の3つが書かれていることを確認する。

bin.includes = plugin.xml,\
               META-INF/,\
               .,\

これをBuildタブでUIをつかって編集していると . が消えることがあるようで、jarに.classファイルが一切格納されず、ClassNotDefFoundErrorが出る事がある。