EMF生成非Java代码

时间:2010-12-30 09:39:16

标签: eclipse code-generation eclipse-emf eclipse-gmf

有没有办法从不是Java的ECore模型代码生成?我有一个代表html布局(表单,输入,按钮)的元模型,我想生成html。

我该怎么做?我必须使用哪些其他工具? 指向教程的链接是完美的,因为我还没有找到它。

2 个答案:

答案 0 :(得分:3)

我认为解决这个问题的最佳方法是在Ecore中创建元模型,然后生成Java代码,也可能生成EMF树编辑器来创建模型。 (请注意,需要生成元模型的Java代码,以便EMF工具可以遍历和解释生成的模型。因此,您不能直接从Ecore生成其他语言 - 这是在单独的步骤中完成的如下所述),

接下来,使用XPand(Xtext模板语言)从模型生成HTML代码。这是一篇博客文章,解释了如何从模型创建HTML表单:

http://www.peterfriese.de/getting-started-with-code-generation-with-xpand/

您可以跳过“创建元模型”的步骤,只使用您已创建的元模型。这篇文章是对XPand的一个很好的介绍,它是一种非常强大的语言,有些人比Jet更好。

答案 1 :(得分:0)

我认为答案取决于您生成的内容是应该与当前类一起生成还是在完全不同的过程中生成。

如果是不同的流程,请查看Xpands答案 - EMF generate non-Java Code

否则请查看JET,因为这用于从ecore生成工件的rets。它并不漂亮 - Java中的Java永远不可读 - 但是很容易从.genmodel进程添加到现有的生成中。