Eclipse Preferences(org.eclipse.core.runtime.preferences.InstanceScope):不需要的前导斜杠

时间:2014-09-15 12:00:17

标签: java eclipse preferences

我想在Java中编写一些Eclipse InstanceScope首选项的programmaticaly。

我用这个:

Preferences instancePrefsNode = InstanceScope.INSTANCE.getNode("my.pref.node");
instancePrefsNode.put("property1", "1");
instancePrefsNode.put("prefix/property2", "2");

刷新后,我进入文件.metadata \ org.eclipse.core.runtime.settings \ my.pref.node.prefs:

eclipse.preferences.version=1
property1=1
//prefix/property2=2

如您所见,包含斜杠的键前缀为2个斜杠。

我无法摆脱属性名称中的斜杠,因为属性节点是由商业Eclipse插件的编辑器定义的......

任何人都知道如何压制这两个领先的斜杠?

感谢的

1 个答案:

答案 0 :(得分:0)

使用两个首选项节点可以工作:

  Preferences instancePrefsNode 
           = InstanceScope.INSTANCE.getNode("my.pref.node");

  instancePrefsNode.put("property1", "1");

  Preferences instancePrefsNode2 
           = InstanceScope.INSTANCE.getNode("my.pref.node/prefix");

  instancePrefsNode2.put("property2", "2");

'//'用于区分节点中的/和首选项中的/,因此您尝试匹配的代码必须使用两个节点,如下所示。