1. Обзор В Kotlin все классы по умолчанию являются окончательными, что, помимо очевидных преимуществ, может создавать проблемы в приложениях Spring. Проще говоря, некоторые области в Spring работают только с классами, не являющимися окончательными.
Естественным решением является ручное открытие классов Kotlin с помощью ключевого слова open или использование плагина kotlin-allopen, который автоматически открывает все классы, необходимые для работы Spring. 2. Зависимости Maven Давайте начнем с добавления зависимости Kotlin-Allopen: <dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-maven-allopen</artifactId>
<version>1.1.4-3</version>
</dependency> Чтобы включить плагин, нам нужно настроить kotlin-все открыто в разделе сборки: <build>
...
<plugins>
...
<plugin>
<artifactId>kotlin-maven-plugin</artifactId>
<groupId>org.jetbrains.kotlin</groupId>
<version>1.1.4-3</version>
<configuratio