首先,我看到了许多关于将XText与GMF集成的stackoverflow的链接。
到目前为止,我看过的最一致的教程是:http://www.eclipse.org/forums/index.php/mv/msg/472225/1036564/#msg_1036564
..但最后一步甚至没有生成文本编辑器(仅GMF编辑器)。
我也看到了文档,但是我不明白他们在此链接中的建议:http://www.eclipse.org/Xtext/documentation.html#gmf_integration
因此,我想知道是否有人知道如何有效地将GMF与Xtext与现有ecore集成!使用XText 2.0.4。
谢谢!
最佳答案
根据您使用GMF的固定程度,您可能需要查看Graphiti(基于GEF构建)。
Graphiti是基于Eclipse的图形框架,可以快速开发领域模型的最新图表编辑器。 Graphiti可以非常轻松地使用基于EMF的域模型,但也可以在域端处理任何基于Java的对象。
有一个Eclipse Labs项目,用于使用名为Spray的XText DSL创建Graphiti编辑器。
该项目旨在提供一种或多种领域专用语言(DSL),以针对Graphiti运行时描述Visual DSL编辑器,并提供代码生成以创建样板代码,以实现针对Graphiti框架的实现。 Spray DSL可能也可以用于生成其他框架的代码。
您可以将DSL ecore模型导入Spray,并使用对DSL类型的引用来创建图形编辑器,而样板相对较少。 CodeGen 2012上的演示文稿(上面Google代码链接上的SprayCodeGeneration2012.pdf)重点介绍了Spray的一些功能。