我观察到以下问题。在我的EMF模型中,我有一个EClass,我想向另一个EClass添加一个具有以前定义的EClass类型的EAttribute。

EClass Type1 {}
EClass Type2 {
   Type1 attribute
}


如果用户创建POJO。他可以写这样的东西

public class C1 {}
public class C2 {
  private C1 c1;
}


如果我尝试使用核心模型编辑器添加EAttribute,则列出受标准EType限制的可用类型(EString,EInt等)。而且我无法设置与先前定义的EClass相等的EAttribute类型。

它是EMF的标准限制吗?

在可以编辑属性的属性的视图中,有两个字段


EType-仅包含默认ecore类型(EString,EInt等)
EAttribyteType-但此字段已禁用

最佳答案

只需使用EReference而不是EAttribute。

10-01 12:28