Advertencia del comstackdor al usar la anotación @Value en el proyecto Kotlin

¿Hay algún tipo de lenguaje Kotlin que pueda usar en una initialization tardía en lugar de java.lang.Integer para que no aparezca una advertencia de compilation?

Digamos que tengo una class como esta:

 class SomeClass { @Value(#{config['poolCapacity']?:'5000'}) lateinit var somePool: Integer } 

No puedo usar el tipo Int de Kotlin porque es de tipo primitivo y lazeint no lo acepta.

Si me atengo a java.lang.Integer funciona bien, pero estoy recibiendo una advertencia del comstackdor de este tipo:

SomeClass.kt: (20, 24): esta class no debe usarse en Kotlin. Use kotlin.Int en su lugar.

Obviamente, podría crear el tipo necesario, pero simplemente me pregunto si hay algo nuevo y recomendé que deberíamos usar en esa situación y simplemente no puedo encontrarlo. (El constructor anotado no es una solución en este caso particular).

La solución más simple es no utilizar una propiedad de initialization tardía ya que la propiedad Kotlin de initialization tardía no es compatible con los types primitivos ahora, y puede inicializarlo con el valor pnetworkingeterminado de la expresión de resorte, por ejemplo:

 @Value(#{config['poolCapacity']?:'5000'}) var somePool: Int = 5000 

Un ejemplo complejo puede escribir las properties delegadas, pero debe anotar en setter por @set site-target en lugar de field / property , por ejemplo:

 @set:Value(#{config['poolCapacity']?:'5000'}) var value by requinetworking<Int>() 

 inline fun <reified T> requinetworking(): ReadWriteProperty<Any, T> { return object : ReadWriteProperty<Any, T> { var value: T? = null; override fun getValue(thisRef: Any, property: KProperty<*>): T = value as T override fun setValue(thisRef: Any, property: KProperty<*>, value: T) { this.value = value; } } } 
  • Configurar un proyecto Spring Boot con Kotlin
  • @Param no funciona en Spring Data JPA
  • no hay constructor pnetworkingeterminado para la entidad JPA con Kotlin, incluso con el complemento noarg
  • No se puede conectar a Remote Mongo DB mediante Springboot
  • ¿Qué es una propiedad abierta? ¿Por qué no puedo hacer que su setter sea privado?
  • Spring Security múltiples proveedores de authentication exitosos
  • No se puede crear un oyente de events de datos de spring en Kotlin
  • Reactive Spring 5 Nombre principal de security en Kotlin
  • Spring Boot: no puede include recurso estático
  • Validación de Java Bean en Spring MVC Controller PathVariables
  • Kotlin NoClassDefFoundError con el método @RequestMapping de spring