WEB开发网
开发学院软件开发Java 构建基于 CDT 的编辑器,第 1 部分: C/C++ 开发工具... 阅读

构建基于 CDT 的编辑器,第 1 部分: C/C++ 开发工具模型

 2009-12-19 00:00:00 来源:WEB开发网   
核心提示: 一旦有资源被创建、删除或修改,Eclipse 工作空间就会创建一个存储有新旧层次结构的 IResourceDelta,构建基于 CDT 的编辑器,第 1 部分: C/C++ 开发工具模型(5),管理器用 DeltaProcessor 对此进行分析,DeltaProcessor 决定了受影响的资

一旦有资源被创建、删除或修改,Eclipse 工作空间就会创建一个存储有新旧层次结构的 IResourceDelta。管理器用 DeltaProcessor 对此进行分析,DeltaProcessor 决定了受影响的资源是否是 CElement。如果是,它会创建一个与此资源相应的新元素,并将其添加到父亲的子列表中。

BBCDT 的 CModelManager 功能执行除最后两项的所有上述功能。资源的内容类型是由在 plugin.xml 文件中列出的 <content-type> 所设置,并创建一个描述符文件用以描述新项目。

步骤 2:创建新的 CProject

CDT 为创建 CDT 资源提供了一个完整的可扩展向导结构。新项目向导 (New Project Wizard) 功能尤其强大,它允许您配置项目构建过程的每一个方面,从环境变量到源码索引。当您完成该向导时,该向导及其核心插件将执行四项主要任务:

在给定路径中创建并打开一个 IProject

构建一个 IProjectDescription 来保存 IProject 的通用信息。

构造一个 CDescriptor 来保存特定于 CDT 的信息。

根据内容类型,为 IProject 给出一个 CNature 或 CCNature

第一步和第二步对于创建任何 IProject 来说都是通用的。在第二项任务中,IProjectDescription 存储了工作台用于定义项目的信息。此数据在项目顶层目录的 .project 文件中以 XML 格式存在。两个重要的元素分别是,列出项目构建命令的 <buildSpec></buildSpec> 和标志着该项目具有不同于常规 IProject 特征的 <natures></natures>。

第三步中的 CDescriptor 与 IProjectDescription 类似。主要的区别在于,它包含了特定于 CDT 的数据,并将此信息插入到一个独立的 .cdtproject 文件中,该文件包含了用于构建过程的不同工具的配置文件,并为每个工具指定了配置参数。此文件使用与 IProjectDescription 类似的 XML 格式。清单 1 是一个 .cdtproject 配置文件声明的例子。

上一页  1 2 3 4 5 6 7  下一页

Tags:构建 基于 CDT

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接