3

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

我怎样才能做到这一点?我还必须使用哪些其他工具?一个教程的链接将是完美的,因为我还没有找到一个。

4

2 回答 2

3

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

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

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

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

于 2010-12-30T15:16:05.530 回答
0

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

如果是不同的进程,看Xpands的回答——EMF generate non-Java Code

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

于 2011-06-23T22:06:03.423 回答