报错内容

IDEA在进行远程开发的时候报错,内容如下:

java: Cannot run program "/usr/lib/jvm/java-1.8.0-openjdk-amd64/bin/java" (in directory "/home/jim/.cache/JetBrains/RemoteDev-IU/_home_jim_DevCodes_Github_zfile/compile-server"): error=0, Failed to exec spawn helper: pid: 3049929, exit value: 1

表现如下:

解决办法

在IDEA设置Build,Execution,Deployment -- Compiler中的Shared build process VM options加入如下内容:

-Djdk.lang.Process.launchMechanism=vfork

如下图所示:

产生原因

项目当前使用的 JDK 版本过低,Jetbrains Gateway 的 IDE 默认构建启动过程中,使用到了 JDK 包中的 jspawnhelper 可执行文件。而 JDK8 由于版本低,未提供该工具。经实际测试,在 OracleJDK 17 和 18 版本中存在该文件。具体可以进入 JDK 包的 lib 或 jre/lib 目录中检查 jspawnhelper 是否存在。


感谢

HeyChek 对本文章的帮助