Jackson @ JsonIgnoreProperties múltiples campos con Kotlin

Tengo problemas para usar @JsonIgnoreProperties con kotlin. Necesito ignorar más de una propiedad, y veo muchas preguntas de tutorial / SO donde, con Java, generalmente haces algo como eso:

@JsonIgnoreProperties({ "p0", "p1", "p2" }) class Example(){...} 

Entonces en kotlin sería:

 @JsonIgnoreProperties(value = arrayOf( "p0", "p1", "p2" )) class Example(){...} 

El campo de value de la interfaz JsonIgnoreProperties debería aceptar una matriz, ya que está declarada de esta manera:

 public String[] value() default { }; 

Pero el comstackdor se queja y quiere una cadena, no una matriz. Ni siquiera puedo duplicar la anotación, entonces ¿cómo debo hacer para ignorar más de un campo?

EDITAR: Parece que es una característica que falta en kotlin, implementada desde 1.2 beta. será posible usar value = ["p0", "p1", "p2"] para annotations. Antes de 1.2 beta, es posible usar @JsonIgnoreProperties("p0", "p1", "p2") , no hay manera de anteponer la matriz con value =

Aquí puede usar el operador de difusión , que es lo que hace el convertidor Java to Kotlin con su código de ejemplo, y también lo que Android Studio sugiere como una solución rápida:

 @JsonIgnoreProperties(value = *arrayOf( "p0", "p1", "p2" )) class Example { ... } 

La acción de intención de solución rápida

Esto funciona porque los types de matriz en los parameters de anotación se convierten en varargs en Kotlin, por lo que podría hacer esto si no está utilizando una matriz desde otro lugar:

 @JsonIgnoreProperties("p0", "p1", "p2") class Example 
  • Kotlin: delegación de funciones
  • Android: uso de generics para tener 1 llamada de actualización de RxJava que devuelve varios types usando la misma interfaz
  • Clases generadas no encontradas
  • ¿Se debe evitar nombrar una function igual que una class existente en Kotlin? ¿Por qué?
  • Sin setter / getter para objects Firebase
  • BadCnetworkingentialsException: no se pudo get el token de acceso con la security de arranque de resorte Oauth2 en GAE
  • Clase Kotlin que implementa el error de la interfaz de Java
  • ¿Cómo puedo inicializar la variable antes de cada testing usando el marco kotlin-test
  • ¿por qué el controller de excepciones coroutine duplica la exception original?
  • La sala no puede elegir un constructor ya que varios constructores son un error adecuado
  • Inyectar una instancia falla con Kotlin & Guice