我收到此错误,但似乎找不到如何使它正常工作。 我的代码,只需遵循Vaadin10 +的一些练习即可:
@PropertyId("string")
final TextField stringField = new TextField("A simple string");
,它将无法编译,突出显示注释,告诉我作为问题标题输入的错误。编译错误什么也没说。
为什么不起作用?作为参考,这是一个使用Eclipse(LTS)和Java 8的Maven项目,由于我从练习文件档案中复制了pom的工作副本,因此pom中没有任何依赖关系。
无论如何,我只需要使用javax验证程序来进行bean验证,因此我不需要就这么困难。我只想了解为什么会破裂。
答案 0 :(得分:2)
您所指的错误消息发生了,例如当声明要在方法上使用的注释改为在例如类或实例字段。
Vaadin中的 @PropertyId
用@Target({ ElementType.FIELD })
定义,这意味着它应用于实例字段。由于您没有显示导致问题的代码的完整上下文,因此我可以想象两个潜在的原因:
stringField
是方法内的局部变量,而不是类中的实例字段。@PropertyId
条注释,而不是从com.vaadin.flow.data.binder.PropertyId
中导入了预期的注释。