Estoy usando ProGuard para mi código de aplicación de arranque de primavera. Después de actualizar a Spring Boot 2, ya no puedo iniciar mi aplicación.
Spring Boot 2 usa kotlin-reflect para crear beans, que usan la anotación kotlin.Metadata durante la reflexión. Esta anotación tiene valores no ofuscados y, por lo tanto, kotlin-reflect busca métodos con nombres originales. y se lanza la siguiente excepción:
kotlin.reflect.jvm.internal.KotlinReflectionInternalError: Could not compute caller for function: public constructor ProjectService(...
ProjectService está ofuscado a F , por lo tanto, no existe tal constructor.
Cuando guardo los nombres de las clases, tengo el mismo problema en otros lugares:
kotlin.reflect.jvm.internal.KotlinReflectionInternalError: Could not compute caller for function: public open fun addRole(...
¿Hay alguna forma de corregir la ofuscación de los parámetros de anotación de kotlin.Metadata ? La anotación en sí no está ofuscada y aún se refiere a los nombres de clase originales que se escriben como valores de cadena. También traté de ofuscar la anotación de metadatos sin éxito.