Spring Boot,MongDB和Kotlin

时间:2019-04-11 22:54:26

标签: mongodb spring-boot kotlin

我正尝试在文档中添加唯一的组合键,如下所示:

@Document
@CompoundIndexes({
    CompoundIndex(def = "{'firstName':1, 'lastName':1}", name = "compound_index_1", unique = true)
})

但是我得到了错误:

An annotation argument must be a compile-time constant.

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:3)

在Kotlin中,数组传递给批注的方式有所不同。查看docs on kotlinlang,您将在底部附近看到此代码段:

{
  "$id": "1",
  "Note": "<p><span style=\"font-family: &quot;Courier New&quot;;\">? 
   aaaa</span><br></p>"
}

因此您的花括号在这里不起作用,您将需要方括号。

// Kotlin 1.2+:
@AnnWithArrayMethod(names = ["abc", "foo", "bar"]) 
class C

// Older Kotlin versions:
@AnnWithArrayMethod(names = arrayOf("abc", "foo", "bar")) 
class D