プリファレンスのデフォルト値をpreference.iniファイルで設定する

Eclipseプラグインを開発するにあたり,ユーザに対しそのプラグインの様々な設定を可能にするためには,プリファレンスページを作成します。作成したプリファレンスページは,Windowsの場合「Window」-「Preferences...」メニューから,Macの場合「Eclipse」-「Preferences...」メニューからユーザによって利用可能になります。

プリファレンスページを作成するには,プリファレンス(設定情報)のデフォルト値を用意するのが一般的です。これにより「Restore Defaults」ボタンを押せば,いつでも設定内容をデフォルト値に復元可能です。

プリファレンスのデフォルト値を設定するには,AbstractPreferenceInitializerを拡張したJavaクラスを作成し,org.eclipse.core.runtime.preferences拡張ポイントに登録することによりprogrammaticallyに設定します。より詳細な設定方法は,例えば以下を参照ください。

http://www.atmarkit.co.jp/fjava/rensai3/eclipsepde04/eclipsepde04_1.html

この場合,プラグインを開発中にデフォルト値を変更したい場合,コンパイルしなおす必要があります。そこで,プリファレンスのデフォルト値をファイルに設定する方法を紹介します。

その方法は簡単で,開発中のプラグインのルートディレクトリ(plugin.xmlやplugin.propertiesが配置されているディレクトリ)にpreferences.iniファイルを用意します。そのファイル内に以下のようなフォーマットでデフォルト値を設定します。

net.sourceforge.dynamicgmf.hoge=hogehoge
net.sourceforge.dynamicgmf.fuga=fugafuga

このフォーマットは,Eclipseのプリファレンスフレームワークがプリファレンスを[ワークスペースディレクトリ]/.metadata/.plugins/org.eclipse.core.runtime/.settings/以下に保存する*.prefsファイルと同じフォーマットです。

なお,このようにプリファレンスのデフォルト値をpreferences.iniファイルに設定する場合,同ファイルをプラグインのビルドに含めることを忘れないようにしてください。