【问题标题】:Generating Java code using Xtend and Sirius使用 Xtend 和 Sirius 生成 Java 代码
【发布时间】:2018-11-15 12:51:51
【问题描述】:

所以,我的目标是创建图形 DSL。我使用 Eclipse 建模框架创建了一个 ecore 模型,之后我使用 Sirius 创建了图形建模工具,但在生成 Java 代码的最后一步时遇到了问题。我想用 Xtend 来生成它。有什么建议最好的方法是什么,或者一些有用的链接?

【问题讨论】:

    标签: emf xtend eclipse-sirius


    【解决方案1】:

    有两个方面:

    1. Xtend 生成器本身,可以独立于 Sirius 进行开发和测试。它会将您的 DSL 文件/模型(不是来自 Sirius 的 .aird.odesign 文件)作为输入,并生成您想要的任何内容。在这方面我无能为力。
    2. 将生成与基于 Sirius 的建模器集成。

    假设您知道如何以编程方式调用 Xtend 生成器,有几种方法可以从 Sirius 内部触发它。例如,您可以使用 Popup Menu 类型的工具向建模器的上下文菜单添加一个条目,然后它可以调用您想要的任何 Java 代码,并从那里启动生成器。

    这是Ecore Tools 所做的启动 EMF GenModel 代码 gen: it declares the popup menu 调用 this Java class 来执行实际生成。

    【讨论】:

    • 好吧,当我为我的 ecore 模型创建实例并使用 .odesign 文件中的 Sirius 为其指定一个视点时,我想从我使用该视点创建的图表中生成代码。
    • 我被困在使用 Xtend 从我的 DSL 文件生成代码上,您能否提供任何可以帮助我解决此问题的内容的链接。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-16
    • 1970-01-01
    • 2017-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多