При попытке собрать проект возникает ошибка.
Код проекта:
fun main(args : Array
Ошибка:
Error:Kotlin: [Internal Error] java.lang.NoClassDefFoundError: javax/xml/bind/DatatypeConverter
at org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils.parseMetadata(KotlinJavascriptMetadataUtils.kt:102)
at org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils$loadMetadata$2.invoke(KotlinJavascriptMetadataUtils.kt:83)
at org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils$loadMetadata$2.invoke(KotlinJavascriptMetadataUtils.kt:57)
at org.jetbrains.kotlin.utils.JsLibraryUtils.traverseArchive(JsLibraryUtils.kt:182)
at org.jetbrains.kotlin.utils.JsLibraryUtils.traverseJsLibrary(JsLibraryUtils.kt:54)
at org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils.loadMetadata(KotlinJavascriptMetadataUtils.kt:82)
at org.jetbrains.kotlin.utils.KotlinJavascriptMetadataUtils.loadMetadata(KotlinJavascriptMetadataUtils.kt:90)
at org.jetbrains.kotlin.js.config.JsConfig.checkLibFilesAndReportErrors(JsConfig.java:192)
at org.jetbrains.kotlin.js.config.JsConfig.checkLibFilesAndReportErrors(JsConfig.java:150)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:221)
at org.jetbrains.kotlin.cli.js.K2JSCompiler.doExecute(K2JSCompiler.java:83)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.java:103)
at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.java:51)
at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:92)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$$inlined$ifAlive$lambda$1.invoke(CompileServiceImpl.kt:380)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$compile$$inlined$ifAlive$lambda$1.invoke(CompileServiceImpl.kt:96)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$$inlined$ifAlive$lambda$2.invoke(CompileServiceImpl.kt:889)
at org.jetbrains.kotlin.daemon.CompileServiceImpl$doCompile$$inlined$ifAlive$lambda$2.invoke(CompileServiceImpl.kt:96)
at org.jetbrains.kotlin.daemon.common.DummyProfiler.withMeasure(PerfUtils.kt:137)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.checkedCompile(CompileServiceImpl.kt:916)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.doCompile(CompileServiceImpl.kt:888)
at org.jetbrains.kotlin.daemon.CompileServiceImpl.compile(CompileServiceImpl.kt:378)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:564)
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:355)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:567)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:800)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:682)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:681)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.base/java.lang.Thread.run(Thread.java:844)
Ответ
Проблема найдена, это оказывается баг Kotlin/JS компайлера c версией Java 9.
Достаточно даунгрейдится до версии 8 или более ранних версий и все заработает ок.
демонстрация проблемы тут https://vimeo.com/238750933
Комментариев нет:
Отправить комментарий