我正在使用XTend构建代码生成器,我已经有了输入模型和元模型。也就是说,我使用ATL为我的XTend代码生成器生成输入模型(作为逐渐降低抽象级别转换序列的一部分,而不是一次完成;这就是我没有使用xtext创建语法的原因)。
所以非常明确,我的代码生成器的输入模型是一个XMI格式的文件,而不是xtext项目的语法(甚至都没有使用)!我认为这导致了我遇到的问题/困惑。
我使用现有模型创建了一个新的XText项目,在.text文件上右键单击,选择“运行为”,生成工件,然后对mwe2文件执行相同的操作。
接下来是什么步骤?我的操作正确吗?如何启动我的代码生成器?所有的例子都是从使用XText创建DSL的角度出发的。我有一个EMF元模型和一个基于XMI的实例。如何使用XTend进一步处理它们?
任何提示或指向教程的指针都是有帮助的。
解决方案:
正如Sven在我的已接受答案中建议的那样,解决方案是使用genmodel从您的元模型生成Java工件。此链接显示了如何进行操作:http://www.vogella.com/articles/EclipseEMF/article.html,请参阅第4节。这可能看起来很显而易见,但我认为仍然值得注意。