java将自定义验证器添加到Eclipse插件中的特定文件类型
我为我的文件类型创建了一个自定义编辑器,现在我需要向它添加验证以在Problems
视图中显示错误,因此首先我创建了一个新的标记类型:
<extension
point="org.eclipse.core.resources.markers"
id="my.marker"
name="My Marker">
<super
type="org.eclipse.core.resources.problemmarker">
</super>
<persistent
value="true">
</persistent>
</extension>
然后我添加了验证器:
<extension
point="org.eclipse.wst.validation.validatorV2"
id="my.validator"
name="My Validator">
<validator
class="com.test.MyValidator"
markerId="my.marker"
build="true"
manual="true">
<include>
<rules>
<fileext
ext="mpe">
</fileext>
</rules>
</include>
</validator>
</extension>
最后,我创建了扩展AbstractValidator
的MyValidator
类,然后重写了validate
方法,但看起来这个类/方法从未被调用,其中的断点没有被命中:
public class MyValidator extends AbstractValidator {
@Override
public ValidationResult validate(ValidationEvent event, ValidationState state, IProgressMonitor monitor) {
// Validation logic
}
}
这是向文件添加验证的正确方法吗?我不确定我是否应该使用构建器,因为我没有构建任何东西,而且构建器似乎附加到特定的项目性质,我需要将验证附加到文件类型,而不管它在哪种类型的项目中
更新
看起来只有在右键单击文件时才会调用validate方法>;验证,我认为当文件被修改时,验证会自动发生,有什么方法可以做到这一点吗
共 (0) 个答案