【问题标题】:How to write CDT plug-in version to .cproject file?如何将CDT插件版本写入.cproject文件?
【发布时间】:2016-07-20 19:32:23
【问题描述】:

我正在为 Eclipse IDE 开发 CDT 插件,我需要跟踪创建 C 项目时使用的插件版本以跟踪兼容性问题。为此,我需要将CDT插件版本写入.cproject文件。

我已经尝试过这样的代码:

IProject project = ...;
IManagedBuildInfo buildInfo = ManagedBuildManager.getBuildInfo(project);
// change things in the buildInfo
ManagedBuildManager.saveBuildInfo(project, true);

但是我还没有找到正确的使用方法。

我已经尝试使用CProject extension point,但是它需要实现的接口ICOwner已被弃用,我没有找到替代方案。

我找到了another similar question,但答案似乎和UI有关(至少我找不到getResDesc()方法)。

还想澄清一下,这不是要从 .cproject 文件中更改现有选项,而是要添加新选项。

如何将CDT插件版本写入.cproject文件?

【问题讨论】:

  • 我不知道正确答案,但替代方法可能是使用 Eclipse API 编写项目范围首选项(到 .settings/file.prefs)?
  • @JonahGraham,谢谢,我会试试的。
  • @JonahGraham,对我来说很好用!谢谢!您可以将其发布为我的问题的答案。
  • 好的,答案已添加。我很高兴它对你有用。

标签: eclipse eclipse-plugin eclipse-cdt


【解决方案1】:

您可以通过写入项目范围的首选项存储来解决此问题。这会将首选项存储在 .settings/*.prefs 文件中。

docs 的快速入门:

IScopeContext projectScope = new ProjectScope(MyProject);
Preferences projectNode = projectScope.getNode("com.example.myplugin");

但是,围绕首选项还有很多其他 API 选择,因此对另一个问题进行进一步讨论可能是最好的选择。

【讨论】:

    猜你喜欢
    • 2011-09-05
    • 1970-01-01
    • 1970-01-01
    • 2010-12-21
    • 1970-01-01
    • 2019-01-15
    • 1970-01-01
    • 2013-07-04
    • 1970-01-01
    相关资源
    最近更新 更多