EMF 模型到模型

问题描述

有 2 个 EMF 核心模型。命名为 lang.ecoreexport.ecore。 他们大体上是一样的。但是 export.ecore 在某些方面有点精简,有些元素的语义略有不同。

现在我在内存中加载了一个 lang 模型,我想在内存中创建一个 export 对象树。

  • 映射类似元素
  • 在导出模型中重新创建引用
  • 自定义不同的对象

有没有一种方法可以有效地做到这一点,同时避免过多的重复编码?

解决方法

您可能可以通过基于自反 API 的步骤开始转换,以将您的源模型“重新创建”为“基本相似”的目标模型,仅基于您的类型名称及其功能。

但是,如果您的元模型不是那么大,我不确定您是否会获得大量时间,但要以清晰/调试为代价。

此外,您还需要考虑您的两个元模型是否会保持“大体相同”,或者它们是否有可能以不同的方式发展,或者您的映射是否需要您偏离该路径。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...