Ответ 1
Вам нужно указать, что должно быть аннотировано, когда вы указываете аннотации параметров конструктора.
Чтобы сделать это, аннотируйте свою аннотацию одним или несколькими аннотациями от scala.annotation.target
, например. getter
, setter
или как в вашем случае field
:
import annotation.target.field
class Person(@(Nullable @field) var name: String)
Вы также можете использовать псевдонимы типов для этого:
type NullableField = Nullable @field
class Person(@NullableField var name: String)
Обновление Scala 2.12
Теперь эта конкретная аннотация и другие находятся в пакете scala.annotation.metastrong > , а не scala.annotation.target
import scala.annotation.meta.{field, param}