我正在Xtext中创建一个DSL,然后在Xtext运行时环境中对其进行编译和运行。然后,在这个运行时环境中,我当然可以创建一个新文件* file.dslextension *,可以在其中根据DSL规范编写一个模型(后者当然可以看作是我在DSL中编写的模型的元模型)。运行环境)。到目前为止,一切都很好。
现在,我想将此模型(注:不是元模型的ecore规范,即DSL规范)导出到ecore模型。已经在StackOverflow上询问了similar question,但是我不知道如何在Eclipse中实现该解决方案(因此,我什至不知道该解决方案是否有效)。因此,基本上我想要的是将在Xtext运行时环境中创建的模型的AST(本身是ecore模型)导出到包含该模型的实际ecore文件中。之后,我想使用该ecore文件进行QVTo语言的转换。
我试图阅读有关如何改编org.xtext.example.generator包中的Xtend文件的教程,但是所有这些教程都专注于针对非常特殊的情况创建专有的转换。我只希望xText自动生成在Xtext运行时环境中编写的模型(DSL实例)的ecore文件。