После обновления до Kotlin 1.3 я до сих пор не могу использовать контракт
Я обновил плагин Kotlin в IDEA с 1.2.71 до 1.3.0 и убедился, что новый SDK - это Project SDK:
Я ожидал, что смогу использовать новый kotlin.contracts.contract
, но он темно-красный!
Information:Kotlin: kotlinc-jvm 1.3.0 (JRE 1.8.0_181-b13)
Error:(9, 9) Kotlin: Error in contract description: Error in contract description
Error:(9, 9) Kotlin: Unresolved reference: contract
Что мне нужно сделать, чтобы получить доступ к контрактам?
1 ответ
Уровень языка проекта не переносится автоматически. Поэтому новые языковые функции не будут доступны (и ваш код не сломается), если вы не сделаете что-то.
Измените уровень языка для вашего проекта вручную в File | Настройки | Сборка, выполнение, развертывание | Компилятор | Котлин Компилятор:
Или добавьте фасет к модулям, для которых вы хотите выборочно изменить уровень:
Для включения контрактов необходимы дальнейшие шаги, которые, в конце концов, являются экспериментальной функцией, но IDEA теперь поможет вам в этом: