当我尝试在JvmModelInferrer
中使用未知类型时,它适用于简单类型,但不适用于泛型类型。
示例:
val unknownRef = typeRef('com.tmtron.ex.xtext2.usage.Unknown')
members += domainObject.toField('simpleField', unknownRef)
val listRef = typeRef(typeof(List), unknownRef)
members += domainObject.toField('list', listRef)
注意:目标项目中不存在类型com.tmtron.ex.xtext2.usage.Unknown
。
生成器将生成此代码:
private com.tmtron.ex.xtext2.usage.Unknown simpleField;
private /* List<com.tmtron.ex.xtext2.usage.Unknown> */Object list;
因此simpleField
生成的代码是正确的(或者至少是我的预期)
但是对于通用list
,我预期的代码会被注释掉,并且会使用Object
。
为什么会发生这种情况/我该如何避免这种情况?
答案 0 :(得分:2)
typeRef('java.util.List<com.tmtron.ex.xtext2.usage.Unknown>')
应该按预期工作。