You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在IntelliJ中构建Kotlin应用时遭遇构建进程异常终止错误

解决IntelliJ中Kotlin应用构建进程异常终止问题

错误信息

Abnormal build process termination: 
nice -n 10 /Users/yashwandhare/Library/Java/JavaVirtualMachines/openjdk-22.0.2/Contents/Home/bin/java -Xmx700m -Djava.awt.headless=true "-Djna.boot.library.path=/Applications/IntelliJ IDEA CE.app/Contents/lib/jna/aarch64" -Djna.nosys=true -Djna.noclasspath=true --add-opens jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED --add-opens jdk.compiler/com.sun.tools.javac.jvm=ALL-UNNAMED -Dexternal.project.config=/Users/yashwandhare/Library/Caches/JetBrains/IdeaIC2024.3/projects/niffler.36f9b025/external_build_system -Dcompile.parallel=true -Drebuild.on.dependency.change=true -Didea.IntToIntBtree.page.size=32768 -Djdt.compiler.useSingleThread=true -Daether.connector.resumeDownloads=false -Dio.netty.initialSeedUniquifier=-532604766655091619 -Djps.use.dependency.graph=true -Dfile.encoding=UTF-8 -Duser.language=en -Duser.country=IN -Didea.paths.selector=IdeaIC2024.3 "-Didea.home.path=/Applications/IntelliJ IDEA CE.app/Contents" "-Didea.config.path=/Users/yashwandhare/Library/Application Support/JetBrains/IdeaIC2024.3" "-Didea.plugins.path=/Users/yashwandhare/Library/Application Support/JetBrains/IdeaIC2024.3/plugins" -Djps.log.dir=/Users/yashwandhare/Library/Logs/JetBrains/IdeaIC2024.3/build-log "-Djps.fallback.jdk.home=/Applications/IntelliJ IDEA CE.app/Contents/jbr/Contents/Home" -Djps.fallback.jdk.version=21.0.5 -Dio.netty.noUnsafe=true -Djava.io.tmpdir=/Users/yashwandhare/Library/Caches/JetBrains/IdeaIC2024.3/compile-server/niffler_99297dbb/_temp_ -Djps.backward.ref.index.builder=true -Djps.backward.ref.index.builder.fs.case.sensitive=false -Dcompilation.charts=false -Djps.kotlin.home=/Users/yashwandhare/Library/Caches/JetBrains/IdeaIC2024.3/kotlin-dist-for-ide/1.6.21 -Dkotlin.incremental.compilation=true -Dkotlin.incremental.compilation.js=true -Dkotlin.daemon.enabled -Dkotlin.daemon.client.alive.path=/var/folders/zq/jpv9zlnx77j6qvbkcn5qvj7w0000gp/T/kotlin-idea-10739428649398147487-is-running -Dide.propagate.context=false -classpath "/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/jps-launcher.jar" org.jetbrains.jps.cmdline.Launcher "/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/jps-builders.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/jps-builders-6.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/jps-javac-extension.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/util-8.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/util_rt.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/platform-loader.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/annotations.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/trove.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/jetbrains.kotlinx.metadata.jvm.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/netty-codec-protobuf.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/protobuf.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/jps-model.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/javac2.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/forms_rt.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/util.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/lib-client.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/aether-dependency-resolver.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/maven-resolver-connector-basic.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/maven-resolver-transport-file.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/maven-resolver-transport-http.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/idea_rt.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-jps-plugin/1.6.21/kotlin-jps-plugin-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-daemon-client/1.6.21/kotlin-daemon-client-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlinx/kotlinx-coroutines-core-jvm/1.5.0/kotlinx-coroutines-core-jvm-1.5.0.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-build-common/1.6.21/kotlin-build-common-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-reflect/1.6.21/kotlin-reflect-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-stdlib/1.6.21/kotlin-stdlib-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-stdlib-common/1.6.21/kotlin-stdlib-common-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/annotations/13.0/annotations-13.0.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-util-io/1.6.21/kotlin-util-io-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-util-klib/1.6.21/kotlin-util-klib-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-util-klib-metadata/1.6.21/kotlin-util-klib-metadata-1.6.21.jar:/Users/yashwandhare/.m2/repository/org/jetbrains/kotlin/kotlin-native-utils/1.6.21/kotlin-native-utils-1.6.21.jar:/Applications/IntelliJ IDEA CE.app/Contents/lib/util-8.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/jps/java-compiler-charts-jps.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/javaFX/lib/javaFX-jps.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/javaFX/lib/javaFX-common.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/eclipse/lib/eclipse-jps.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/eclipse/lib/eclipse-common.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/platform-langInjection/lib/java-langInjection-jps.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/Groovy/lib/groovy-jps.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/Groovy/lib/groovy-constants-rt.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven-jps.jar:/Applications/IntelliJ IDEA CE.app/Contents/plugins/gradle-java/lib/gradle-jps.jar" org.jetbrains.jps.cmdline.BuildMain 127.0.0.1 56648 2a1d78c1-d8a1-439d-a787-6fedde34a9c5 /Users/yashwandhare/Library/Caches/JetBrains/IdeaIC2024.3/compile-server
Be careful, logger will be shut down earlier than application: Unable to make field private static java.util.IdentityHashMap java.lang.ApplicationShutdownHooks.hooks accessible: module java.base does not "opens java.lang" to unnamed module @6d03e736
Build process started. Classpath: /Applications/IntelliJ IDEA CE.app/Contents/plugins/java/lib/jps-launcher.jar
Error connecting to 127.0.0.1:56648; reason: Bad file descriptor: /127.0.0.1:56648
io.netty.channel.AbstractChannel$AnnotatedSocketException: Bad file descriptor: /127.0.0.1:56648
Caused by: java.net.SocketException: Bad file descriptor
    at java.base/sun.nio.ch.Net.pollConnect(Native Method)
    at java.base/sun.nio.ch.Net.pollConnectNow(Net.java:682)
    at java.base/sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:1060)
    at io.netty.channel.socket.nio.NioSocketChannel.doFinishConnect(NioSocketChannel.java:330)
    at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.finishConnect(AbstractNioChannel.java:384)
    at io.netty.channel.nio.AbstractNioChannel$AbstractNioUnsafe.handle(AbstractNioChannel.java:432)
    at io.netty.channel.nio.NioIoHandler$DefaultNioRegistration.handle(NioIoHandler.java:386)
    at io.netty.channel.nio.NioIoHandler.processSelectedKey(NioIoHandler.java:585)
    at io.netty.channel.nio.NioIoHandler.processSelectedKeysPlain(NioIoHandler.java:530)
    at io.netty.channel.nio.NioIoHandler.processSelectedKeys(NioIoHandler.java:503)
    at io.netty.channel.nio.NioIoHandler.run(NioIoHandler.java:478)
    at io.netty.channel.SingleThreadIoEventLoop.runIo(SingleThreadIoEventLoop.java:184)
    at io.netty.channel.SingleThreadIoEventLoop.run(SingleThreadIoEventLoop.java:156)
    at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:1123)
    at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
    at java.base/java.lang.Thread.run(Thread.java:1570)
Exiting.

问题根源

  1. JDK版本不兼容:使用的OpenJDK 22.0.2与旧版Kotlin插件(1.6.21)不匹配,JDK 22的模块系统限制更严格,导致反射访问java.lang.ApplicationShutdownHooks时出现权限错误。
  2. 构建进程通信失败:上述权限错误导致构建进程提前终止,进而引发Socket连接失败(Bad file descriptor)。

解决步骤

  • 降级JDK版本

    1. 打开IntelliJ,进入File > Project Structure
    2. 在Project Settings > Project中,将Project SDK切换为JDK 21或17(LTS版本兼容性更好)
    3. 同步项目的Gradle/Maven配置,确保构建脚本中的sourceCompatibility和targetCompatibility与所选JDK版本一致
  • 更新Kotlin插件

    1. 进入Settings > Plugins,找到Kotlin插件
    2. 点击"Update"按钮,将插件更新到与当前IntelliJ版本匹配的最新稳定版(建议Kotlin 1.9+版本)
  • 清理缓存与构建目录

    1. 执行File > Invalidate Caches... > Invalidate and Restart,重启IntelliJ
    2. 删除项目根目录下的build、.gradle(或.mvn)目录,清除本地构建缓存
  • 临时JVM参数 workaround
    如果暂时无法降级JDK,可添加JVM参数绕过模块权限限制:

    1. 进入Help > Edit Custom VM Options
    2. 添加一行:--add-opens java.base/java.lang=ALL-UNNAMED
    3. 重启IntelliJ后尝试构建

内容的提问来源于stack exchange,提问作者Yash Wandhare

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.15 12:17:33