Xtext Validator 创建错误

Xtext Validator creating Errors

我想知道是否有一种通用策略可用于在验证器中显示错误(或警告等)。

我知道有一个 error 函数,它接受如下参数:

是否可以以至少在大多数时间都有效的通用方式调用此函数?我知道有人这样调用函数: error("MyMessage", eObject.eContainer(), eObject.eContainingFeature(), ...),但是,这在大多数情况下都会将错误放在错误的位置。难道不可以只向 eObject 添加错误而不关心功能和内容吗?

当我这样调用它时:error("MyMessage", eObject, eObject.eContainingFeature(), ...)我得到一个异常,因为特征和 eObject 不匹配。

我刚刚找到了答案。您可以将功能设置为 null.

因此您可以像这样调用该函数: error("MyMessage", eObject, null, ...)