2012-11-06 91 views
3

我正在使用Eclipse 3.7(Indigo)作爲Eclipse插件。這個插件將通過產品文件打包成獨立的應用程序。安裝將是一個多用戶安裝,如方案2中描述的this link。所以會有很多用戶共享一個安裝區域。Eclipse插件:通過首選項頁面的配置範圍首選項

根據this answer,我想我可以將osgi.configuration.area設置爲user.home位置,以便每個用戶都有自己的設置。我知道如何訪問首選項via code,但現在我希望能夠通過Eclipse中的Window下的首選項對話框訪問這些首選項。對於我所看到的所有示例,「首選項」對話框僅迎合實例範圍首選項。有什麼辦法可以將配置範圍首選項添加到preferences頁面。

我也看過在stackoverflow this answer,但這再次迎合實例範圍,因此我發佈了一個單獨的問題。

+0

不知怎的,你需要這個值在.ini文件-Declipse.pluginCustomization設置的user.home,也許如果是的user.home有效值在ini中將其定製爲指向user.home/preferences.properties? –

+0

對不起,我不確定你的評論是什麼意思......是否與偏好頁面有關? – nbz

回答

1

您的偏好頁面是PreferencePage的一個子類(很可能是FieldEditorPreferencePage的一個子類)。

通過實現IWorkbenchPreferencePage接口,您可以實現init方法並設置自定義PreferenceStore用於實現。

例如獲得=在運行時cwide.properties基於

public void init(IWorkbench workbench) { 
    setPreferenceStore(
      new ScopedPreferenceStore(ConfigurationScope.INSTANCE, 
        "com.nem.plugin")); 
    setDescription("A preference page using configuration scope"); 
} 
+0

這實際上是我最終實現的,對於我的performOK()和performDefaults(),我在任何需要的地方使用ConfigurationScope.INSTANCE.get()和put()。謝謝! – nbz