Eclipse,插件首选项加载问题

时间:2011-12-19 04:33:13

标签: java eclipse-plugin

我无法将首选项加载到eclipse上。如果没有首先进入首选项页面,我无法加载首选项的值。 我启动eclipse,使用我的插件,我发现该功能未启用。 我开始eclipse,转到首选页面并使用我的插件,一切正常。

我正在尝试使用以下代码

访问首选项存储的启用值
final IPreferenceStore preferences = new ScopedPreferenceStore(new InstanceScope(), <my plugin id>);
this.enabled = preferences.getBoolean(<templateName>_ENABLE_TEMPLATE"));

此调用转到方法     public boolean getBoolean(String name){         String value = internalGet(name);         返回值== null? BOOLEAN_DEFAULT_DEFAULT:Boolean.valueOf(value)                 .booleanValue();     }     internalGet(name) - 返回null ..结果this.enabled设置为false

在我的代码中我检查这个变量,如果它是假的,我会显示一条错误消息,不再继续。

我想知道我们如何确保首选项在调用后立即启用/加载。

提前致谢!!

1 个答案:

答案 0 :(得分:1)

首选项服务在org.eclipse.core.runtime插件激活时初始化,这意味着您的代码几乎不可能在未初始化状态下访问它。未获得首选项值的原因是该值尚未设置。

还可以使用 preferences.ini 文件指定所有首选项的默认值(应该放在插件/包根目录中)。