代码之家  ›  专栏  ›  技术社区  ›  Luís Soares Cilan

Kotlin脚本无法在Windows-org上运行。喷气式飞机。科特林。决定懒惰的NodeDescriptorForDeclarationException异常

  •  0
  • Luís Soares Cilan  · 技术社区  · 4 年前

    运行时:

     kotlinc -script Day1.kts
    

    Day1.kts

    println("hello")
    

    我得到:

    WARNING: An illegal reflective access operation has occurred
    WARNING: Illegal reflective access by com.intellij.util.ReflectionUtil (file:/C:/Users/ASUS/kotlin-native-windows-1.4.21/konan/lib/kotlin-native.jar) to method java.util.ResourceBundle
    .setParent(java.util.ResourceBundle)
    WARNING: Please consider reporting this to the maintainers of com.intellij.util.ReflectionUtil
    WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
    WARNING: All illegal access operations will be denied in a future release
    error: compilation failed: Front-end Internal error: Failed to analyze declaration Day1
    File being compiled: (1,1) in C:/Users/ASUS/IdeaProjects/adventOfCode2020/Day1.kts
    The root cause org.jetbrains.kotlin.resolve.lazy.NoDescriptorForDeclarationException was thrown at: org.jetbrains.kotlin.resolve.lazy.BasicAbsentDescriptorHandler.diagnoseDescriptorNot
    Found(AbsentDescriptorHandler.kt:18)
    
     * Source files: Day1.kts
     * Compiler version info: Konan: 1.4.21 / Kotlin: 1.4.21
     * Output kind: PROGRAM
    
    exception: org.jetbrains.kotlin.util.KotlinFrontEndException: Front-end Internal error: Failed to analyze declaration Day1
    File being compiled: (1,1) in C:/Users/ASUS/IdeaProjects/adventOfCode2020/Day1.kts
    The root cause org.jetbrains.kotlin.resolve.lazy.NoDescriptorForDeclarationException was thrown at: org.jetbrains.kotlin.resolve.lazy.BasicAbsentDescriptorHandler.diagnoseDescriptorNot
    Found(AbsentDescriptorHandler.kt:18)
            at org.jetbrains.kotlin.resolve.ExceptionWrappingKtVisitorVoid.visitDeclaration(ExceptionWrappingKtVisitorVoid.kt:43)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitDeclaration(KtVisitorVoid.java:453)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitDeclaration(KtVisitorVoid.java:21)
            at org.jetbrains.kotlin.psi.KtVisitor.visitScript(KtVisitor.java:78)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitScript(KtVisitorVoid.java:73)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitScript(KtVisitorVoid.java:519)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitScript(KtVisitorVoid.java:21)
            at org.jetbrains.kotlin.psi.KtScript.accept(KtScript.java:69)
            at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:60)
            at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer$analyzeDeclarations$1.registerDeclarations(LazyTopDownAnalyzer.kt:78)
            at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer$analyzeDeclarations$1.visitKtFile(LazyTopDownAnalyzer.kt:96)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitKtFile(KtVisitorVoid.java:513)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitKtFile(KtVisitorVoid.java:21)
            at org.jetbrains.kotlin.psi.KtFile.accept(KtFile.kt:243)
            at org.jetbrains.kotlin.psi.KtFile.accept(KtFile.kt:230)
            at org.jetbrains.kotlin.resolve.ExceptionWrappingKtVisitorVoid.visitElement(ExceptionWrappingKtVisitorVoid.kt:27)
            at com.intellij.psi.PsiElementVisitor.visitFile(PsiElementVisitor.java:35)
            at org.jetbrains.kotlin.psi.KtVisitor.visitKtFile(KtVisitor.java:73)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitKtFile(KtVisitorVoid.java:69)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitKtFile(KtVisitorVoid.java:513)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitKtFile(KtVisitorVoid.java:21)
            at org.jetbrains.kotlin.psi.KtFile.accept(KtFile.kt:243)
            at org.jetbrains.kotlin.psi.KtFile.accept(KtFile.kt:230)
            at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.analyzeDeclarations(LazyTopDownAnalyzer.kt:201)
            at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer.analyzeDeclarations$default(LazyTopDownAnalyzer.kt:60)
            at org.jetbrains.kotlin.backend.konan.TopDownAnalyzerFacadeForKonan.analyzeFilesWithGivenTrace(TopDownAnalyzerFacadeForKonan.kt:94)
            at org.jetbrains.kotlin.backend.konan.TopDownAnalyzerFacadeForKonan.analyzeFiles(TopDownAnalyzerFacadeForKonan.kt:67)
            at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$frontendPhase$1$1.invoke(ToplevelPhases.kt:86)
            at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$frontendPhase$1$1.invoke(ToplevelPhases.kt)
            at org.jetbrains.kotlin.cli.common.messages.AnalyzerWithCompilerReport.analyzeAndReport(AnalyzerWithCompilerReport.kt:115)
            at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$frontendPhase$1.invoke(ToplevelPhases.kt:85)
            at org.jetbrains.kotlin.backend.konan.ToplevelPhasesKt$frontendPhase$1.invoke(ToplevelPhases.kt)
            at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:97)
            at org.jetbrains.kotlin.backend.common.phaser.PhaseBuildersKt$namedOpUnitPhase$1.invoke(PhaseBuilders.kt:95)
            at org.jetbrains.kotlin.backend.common.phaser.NamedCompilerPhase.invoke(CompilerPhase.kt:94)
            at org.jetbrains.kotlin.backend.common.phaser.CompositePhase.invoke(PhaseBuilders.kt:23)
            at org.jetbrains.kotlin.backend.common.phaser.NamedCompilerPhase.invoke(CompilerPhase.kt:94)
            at org.jetbrains.kotlin.backend.common.phaser.CompilerPhaseKt.invokeToplevel(CompilerPhase.kt:41)
            at org.jetbrains.kotlin.backend.konan.KonanDriverKt.runTopLevelPhases(KonanDriver.kt:29)
            at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:78)
            at org.jetbrains.kotlin.cli.bc.K2Native.doExecute(K2Native.kt:35)
            at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:88)
            at org.jetbrains.kotlin.cli.common.CLICompiler.execImpl(CLICompiler.kt:44)
            at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:98)
            at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:76)
            at org.jetbrains.kotlin.cli.common.CLITool.exec(CLITool.kt:45)
            at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit(CLITool.kt:227)
            at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMainNoExit$default(CLITool.kt:225)
            at org.jetbrains.kotlin.cli.common.CLITool$Companion.doMain(CLITool.kt:214)
            at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:264)
            at org.jetbrains.kotlin.cli.bc.K2Native$Companion$main$1.invoke(K2Native.kt:261)
            at org.jetbrains.kotlin.util.UtilKt.profileIf(Util.kt:27)
            at org.jetbrains.kotlin.util.UtilKt.profile(Util.kt:21)
            at org.jetbrains.kotlin.cli.bc.K2Native$Companion.main(K2Native.kt:263)
            at org.jetbrains.kotlin.cli.bc.K2NativeKt.main(K2Native.kt:457)
            at org.jetbrains.kotlin.cli.utilities.MainKt$main$1.invoke(main.kt:41)
            at org.jetbrains.kotlin.cli.utilities.MainKt$main$1.invoke(main.kt)
            at org.jetbrains.kotlin.cli.utilities.MainKt.mainImpl(main.kt:17)
            at org.jetbrains.kotlin.cli.utilities.MainKt.main(main.kt:41)
    Caused by: org.jetbrains.kotlin.resolve.lazy.NoDescriptorForDeclarationException: Descriptor wasn't found for declaration SCRIPT
            at org.jetbrains.kotlin.resolve.lazy.BasicAbsentDescriptorHandler.diagnoseDescriptorNotFound(AbsentDescriptorHandler.kt:18)
            at org.jetbrains.kotlin.resolve.lazy.BasicAbsentDescriptorHandler.diagnoseDescriptorNotFound(AbsentDescriptorHandler.kt:17)
            at org.jetbrains.kotlin.resolve.lazy.LazyDeclarationResolver.findClassDescriptor(LazyDeclarationResolver.kt:88)
            at org.jetbrains.kotlin.resolve.lazy.LazyDeclarationResolver.getScriptDescriptor(LazyDeclarationResolver.kt:65)
            at org.jetbrains.kotlin.resolve.LazyTopDownAnalyzer$analyzeDeclarations$1.visitScript(LazyTopDownAnalyzer.kt:89)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitScript(KtVisitorVoid.java:519)
            at org.jetbrains.kotlin.psi.KtVisitorVoid.visitScript(KtVisitorVoid.java:21)
            at org.jetbrains.kotlin.psi.KtScript.accept(KtScript.java:69)
            at org.jetbrains.kotlin.psi.KtElementImplStub.accept(KtElementImplStub.java:60)
            at org.jetbrains.kotlin.resolve.ExceptionWrappingKtVisitorVoid.visitDeclaration(ExceptionWrappingKtVisitorVoid.kt:32)
            ... 58 more
    

    我使用的是Windows10,Kotlin原生Windows1.4。21 它在Mac中运行良好。 非常感谢。

    0 回复  |  直到 4 年前
        1
  •  0
  •   Artyom Degtyarev    4 年前

    正如我们在会议上所想的那样 https://youtrack.jetbrains.com/issue/KT-44049 ,问题在于下载的存档文件不正确。

    本文档提到下载kotlin-compiler-1.4。21.zip,而您可能已经下载了kotlin-native-prebuild-windows-1.4。21.zip