当我在窗口中更改设置(如下面的屏幕截图所示)时,这些设置实际存储在哪里?
奖励:有什么方法可以使用 Java、Eclipse RCP 等以编程方式访问设置吗?
谢谢!
来源:Eclipse wiki
如果您想将首选项从一个版本保留到另一版本,请使用文件/导出/首选项导出它们。
首选项存储在不同的地方(这适用于 Eclipse 3.1)
对于每个安装(但这可能因多用户安装而异),在存储于以下位置的文件中:
<eclipse_home>/eclipse/configuration/.settings/
每个插件通常有一个文件,带有首选项扩展名。请注意,很少有插件使用安装范围的首选项。
对于每个工作区,存储在
<workspace>/.metadata/.plugins/org.eclipse.core.runtime/.settings
中的文件中。
每个插件通常有一个文件,带有首选项扩展名。 对于每个项目 -- 对于项目级设置 -- 在存储在项目文件夹的 .settings 子目录中的文件中。
这里使用java代码访问首选项的文章。
首选项存储在
.metadata/.plugins/org.eclipse.core.runtime/.settings
工作区的首选项文件中。每个插件都有一个首选项文件,贡献首选项。
对整个首选项的编程访问是通过
IPreferencesService
完成的,您可以使用 Platform.getPreferencesService()
获得。
您可以在 运行时首选项 Eclipse 帮助页面中找到有关如何使用它们的更多信息和示例。
搜索它:
更改 Eclipse 中的一些设置然后运行:
find ~ -type f -mmin -5 | grep "\.settings"
这将发现过去 5 分钟内修改的文件。
我的在
workspace
,字面意思是......
~/workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
您可以在Lars Vogel的saneclipse项目中看到大部分相关的Eclipse设置(主要针对JDT)。
vogellacompany/com.vogella.saneclipse
存储库,它将调整和微调以下设置:
com.vogella.saneclipse.preferences/.settings/org.eclipse.jdt.core.prefs
com.vogella.saneclipse.preferences/.settings/org.eclipse.core.runtime.prefs
com.vogella.saneclipse.preferences/.settings/org.eclipse.core.resources.prefs
com.vogella.saneclipse.templates/.settings/org.eclipse.jdt.core.prefs
com.vogella.saneclipse.fileextensions/.settings/org.eclipse.jdt.core.prefs
com.vogella.saneclipse.fileextensions/.settings/org.eclipse.pde.core.prefs
myworkspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs
如果我想将 Mac OS 上的默认文本编辑器字体更改为
Monaco
,我需要这样的东西:
//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
ColorsAndFontsPreferencePage.expandedCategories=Torg.eclipse.ui.workbenchMisc
ColorsAndFontsPreferencePage.selectedElement=Forg.eclipse.jface.textfont
PLUGINS_NOT_ACTIVATED_ON_STARTUP=;org.eclipse.m2e.discovery;
eclipse.preferences.version=1
org.eclipse.compare.contentmergeviewer.TextMergeViewer=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.debug.ui.DetailPaneFont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.debug.ui.MemoryViewTableFont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.debug.ui.consoleFont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.egit.ui.CommitMessageEditorFont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.egit.ui.CommitMessageFont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.egit.ui.DiffHeadlineFont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.jdt.internal.ui.compare.JavaMergeViewer=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.jdt.internal.ui.compare.PropertiesFileMergeViewer=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.jdt.ui.PropertiesFileEditor.textfont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.jdt.ui.editors.textfont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.jface.textfont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.mylyn.wikitext.ui.presentation.textFont=1|Monaco|12.0|0|COCOA|1|Monaco;
org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_END=255,255,255
org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_START=255,255,255
org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_TEXT_COLOR=16,16,16
org.eclipse.ui.workbench.ACTIVE_TAB_BG_END=255,255,255
org.eclipse.ui.workbench.ACTIVE_TAB_BG_START=230,230,230
org.eclipse.ui.workbench.INACTIVE_TAB_BG_END=255,255,255
org.eclipse.ui.workbench.INACTIVE_TAB_BG_START=240,240,240
preference.console.font=1|Monaco|12.0|0|COCOA|1|Monaco;
svn_comment_font=1|Monaco|12.0|0|COCOA|1|Monaco;
terminal.views.view.font.definition=1|Monaco|12.0|0|COCOA|1|Monaco;