Eclipse preferences行为
Eclipse 有4中preferences
- DefaultPreferences 共享数据在所有的workspace
- ConfigurationPreference 共享数据在所有的workspace
- InstancePreference 只在一个workspace生效
- ProjectPreference 只在相关的project中生效
Eclipse preferences数据来源
- DefaultPreference :不存在硬盘里,他的数据来自扩展点"org.eclipse.core.runtime.preferences" 或者 硬编码
- ConfigurationPreference:存在硬盘里,放在%osgi.configuration.area%/.settings/%qualifier%.prefs
- InstancePreference: 存在硬盘里,放在%osgi.instance.area%/.metadata/.plugins/org.eclipse.core.runtime/.settings/%qualifier%.prefs 用户可改变他从windows->preferences ,
- ProjectPreferences:存在硬盘里,放在%project.dir%/settings/%qualifier%.prefs
如何修改eclipse默认的preference
- 看 org.eclipse.core.internal.preferences.DefaultPreferences 和 load 方法.
- 我们可以通过applyCommandLineDefaults() 方法 ,主要设置 "eclipse.pluginCustomization" 系统变量
- 我们可以把eclipse.pluginCustomization设置到config.ini中或者使用-plugincustomization设置在eclipse.ini中
- eclipse.pluginCustomization="file path",这个file的内容格式必须是 %pluginid%/key=value