註釋在科特林可以有不同的使用網站的目標如下解釋:https://kotlinlang.org/docs/reference/annotations.html#annotation-use-site-targets註釋Kotlin中的屬性時,註釋的默認目標是什麼?
我的問題是:當沒有明確定義使用現場,什麼是默認的目標時,註釋的類屬性就像在下面的例子?
class Test {
@SomeAnnotation
var someProperty: String? = null
}
背景
我想Jongo在科特林MongoDB的客戶端,並有註釋id字段的問題。
@MongoId @MongoObjectId var id: String? = null
有問題的註釋是剛剛元註釋傑克遜:Jongo不會當它的註釋是這樣id屬性正確映射。然而,似乎當我註釋的財產像這樣的工作,說明使用現場問題:
@field:[MongoId MongoObjectId]
var id: String? = null
我預計@field
是默認使用現場,但似乎並非如此。
啊..我不知何故錯過了那部分,即使我正在積極尋找它。這解釋了爲什麼映射不指定@field不起作用。 MongoId沒有TARGET,並且屬性註釋對Java不可見。由於Jongo使用期望字段或getter註釋的Jackson,因此無法看到註釋。 –
@KresimirNesek你想要它在Jackson的吸氣劑上,所以'@get:SomeAnnotation'屬性。 –