Как устранить ошибку "java.lang.NoClassDefFoundError" при импорте библиотек в Kscript?
Я новичок в написании сценариев Kotlin и пытаюсь использовать Kscript для импорта библиотек. Я слежу за учебниками и пробую очень простой скрипт (ниже), который импортирует пару библиотек. Когда я запускаю сценарий, я получаю сообщение об ошибке ниже (эта ошибка возникает при любом импорте, который я пытаюсь выполнить). Скрипт работает нормально, когда я удаляю импорт. Есть идеи, как я могу исправить импорт в моем коде?
Сообщение об ошибке:
[kscript] Resolving dependencies...
[kscript] Resolving org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.2...Exception in thread "main" java.lang.NoClassDefFoundError: org/ietf/jgss/GSSException
Мой код:
#!/usr/bin/env kscript
@file:MavenRepository("central", "https://repo.maven.apache.org/maven2/")
@file:DependsOn("org.jetbrains.kotlinx:kotlinx-coroutines-core:1.3.2")
@file:DependsOn("org.jetbrains.kotlinx:kotlinx-coroutines-core-common:1.3.2")
import kotlinx.coroutines.*
println("Script is running with ${args.size} args passed")
for(arg in args) {
println("arg: $arg")
}
1 ответ
Решение
Этот сценарий не работает при использовании jdk 9+ и вызывает ошибку NoClassDefFoundError для org/ietf/jgss/GSSException
на Kotlin 1.3.x.
В качестве обходного пути используйте jdk 1.8.
Будущее исправление ссылается на это Зависимости работают только с jdk8