PDT2.1のdropinsにSubclipseを入れようとしてはまった件
続きがあります。
- PDT2.1がどうにもバギーな件
- [id:kanonji:20090911:1252697383]
PDT2.1 でSubclipseを使うため、せっかくなのでdropinsフォルダを使ってみることにしました。
なかなかうまく入らなかったので、後々のためにメモしときます。
なお、 PDT2.1 は eclipse3.5(Galileo)ベースなので、たぶん eclipse3.5 でも同じだと思います。
featuresフォルダとpluginsフォルダの両方ある場合は、dropins/${AS_YOU_LIKE}以下に配置
2008-05-15 - kojihashiの日記パターン3:dropins/${AS_YOU_LIKE}/eclipse以下に配置
このパターンを使うとプラグイン群をフォルダごとに分けて配置できますね。${AS_YOU_LIKE}/以下に"eclipse"フォルダを設けないといけないところが要注意。
eclipse/ dropins/ emf/ eclipse/ features/ plugins/ gef/ eclipse/ features/ plugins/
dropinsに入れる場合、プラグインの構造によって置き方が変わります。
Subclipseではfeaturesフォルダとpluginsフォルダの両方ある構造なので、dropinsフォルダに直置きは出来ません。
管理しやすくするために、dropinsフォルダにsubclipseフォルダを作って、そこに置くことにしました。
上記サイトでは、自分で作ったフォルダの中に、eclipseフォルダが必要と書いてますが、これが逆にあると認識されませんでした。
引用はeclipse3.4での話なので、たぶんeclipse3.5になって動きが変わったということかもしれません。
一度dropinsに配置したプラグインのフォルダ名を変えるには一手間必要
たとえば dropins/foo にプラグインを置いたとして、やっぱり dropins/bar にしたくなった場合です。
eclipseを終了して、fooをbarにリネームして、eclipseを起動したら、そのプラグインは認識されませんでした。
-clean引数なども効果がありません。
解決方法は、いったんfooフォルダをdropinsフォルダの外に出した状態でeclipseを起動し、プラグインを消したことにします。
そしてeclipseを終了し、改めてbarフォルダにリネームしたものをdropinsフォルダに置いてから起動します。
dropinsフォルダ内でリネームだけして、fooは削除されbarが追加されたと認識してくれても良さそうなものですが、だめみたいですね。
なお、一度そのプラグインが削除された事になるので、設定が引き継がれない等のトラブルが起こるかもしれません。*1
ところでdropinsフォルダって?
eclipse3.4から Equinox p2 フレームワークという、プラグインのインストール/更新の仕組みが導入されました。
dropinsフォルダは、そのp2を使ったプラグインインストールで、その中でも手動でのインストール用のフォルダです。
eclipse内のGUIでのプラグイン管理もp2によって刷新されてますが、これはdropinsフォルダではなく別の場所にインストールします。
たぶん、従来通りeclipse本体のfeatures/pluginsに入れてるんだと思います。
参考
2008-05-15 - kojihashiの日記
dropinsフォルダにプラグインを追加するときの注意点 - Fly me to the Juno!
Equinox p2 によって Eclipse プラグインの頭痛を解消する
*1:これは試していません