我无法可靠地重现这个问题,因为它是零星的。这是我用 Gradle 构建 Kotlin 项目时得到的结果:
Could not perform incremental compilation: Could not connect to Kotlin compile daemon
Could not connect to kotlin daemon. Using fallback strategy.
:myproj:compileKotlin FAILED
1 actionable task: 1 executed
e: java.lang.NoClassDefFoundError: Could not initialize class kotlin.Unit
warning: the '-d' option with a directory destination is ignored because '-Xbuild-file' is specified
Exception in thread "Thread-25" java.lang.NoClassDefFoundError: Could not initialize class kotlin.Unit
at org.jetbrains.kotlin.compilerRunner.UtilsKt$runToolInSeparateProcess$readErrThread$1$1.invoke(utils.kt)
at kotlin.io.TextStreamsKt.forEachLine(ReadWrite.kt:154)
at org.jetbrains.kotlin.compilerRunner.UtilsKt$runToolInSeparateProcess$readErrThread$1.invoke(utils.kt:68)
at org.jetbrains.kotlin.compilerRunner.UtilsKt$runToolInSeparateProcess$readErrThread$1.invoke(utils.kt)
at kotlin.concurrent.ThreadsKt$thread$thread$1.run(Thread.kt:18)
e: java.lang.NoClassDefFoundError: Could not initialize class kotlin.Unit
...
我使用以下选项运行Gradle
gradle assemble --no-daemon --parallel
--parallel
或添加--daemon
选项无效4.2
可能是什么问题?
答案 0 :(得分:2)
这是known issue with Kotlin。不幸的是,目前我们还不知道究竟是什么导致它。
答案 1 :(得分:1)
此问题的原因与使用两个或更多不同的Kotlin版本有关。就我而言,我使用Android Studio 3和IntelliJ IdeaU 2017.我使用的解决方案是:
在任一IDE中检查您的Kotlin版本。在这种情况下,您应该将Kotlin的编译器更新为相同的版本。
如果只使用一个IDE,最好的解决方案是删除IDE和所有缓存。
有关详细信息,请参阅Kotlin community。