Windows下coc.nvim启动clangd失败:Error: spawn UNKNOWN -4094
问题描述
在Windows系统中已安装Neovim、Node.js与coc.nvim,配置C++开发环境时,打开cpp文件出现错误:Server clangd failed to start: Error: spawn UNKNOWN。更换为ccls后出现相同错误,配置clangd.path后问题依旧。
CocInfo 信息
## versions vim version: NVIM v0.9.1 node version: v18.16.1 coc.nvim version: 0.0.82-'2280f9a 2023-06-26 10:37:36 +0800' coc.nvim directory: C:\Users\EXO\AppData\Local\nvim-data\plugged\coc.nvim term: undefined platform: win32 ## Log of coc.nvim 2023-07-07T13:09:16.419 INFO (pid:28784) [plugin] - coc.nvim initialized with node: v18.16.1 after 164 2023-07-07T13:09:22.565 INFO (pid:28784) [services] - LanguageClient clangd state change: stopped => starting 2023-07-07T13:09:22.568 INFO (pid:28784) [services] - LanguageClient clangd state change: starting => stopped 2023-07-07T13:09:22.569 ERROR (pid:28784) [services] - Server clangd failed to start: Error: spawn UNKNOWN at ChildProcess.spawn (node:internal/child_process:413:11) at Object.spawn (node:child_process:757:9) at C:\Users\EXO\AppData\Local\nvim-data\plugged\coc.nvim\build\index.js:69379:47 at async LanguageClient.createConnection (C:\Users\EXO\AppData\Local\nvim-data\plugged\coc.nvim\build\index.js:68714:28) at async LanguageClient._start (C:\Users\EXO\AppData\Local\nvim-data\plugged\coc.nvim\build\index.js:68340:30) at async Object.start (C:\Users\EXO\AppData\Local\nvim-data\plugged\coc.nvim\build\index.js:69889:17) { errno: -4094, code: 'UNKNOWN', syscall: 'spawn' } 2023-07-07T13:09:34.026 INFO (pid:28784) [attach] - receive notification: showInfo []
相关配置截图
- CocConfig中clangd.path配置截图
- CocInfo问题截图
可能的解决方法
- 检查可执行文件路径:确保
clangd.path配置的是完整的.exe文件路径,比如C:\Program Files\clangd\bin\clangd.exe;若路径包含空格,需用双引号包裹,或使用Windows短路径(如C:\Progra~1\clangd\bin\clangd.exe)。 - 验证可执行文件有效性:直接在cmd/PowerShell中运行clangd/ccls,若无法启动或报错,说明文件损坏、未正确安装,重新下载对应Windows版本的clangd/ccls。
- 排查Node.js兼容性:尝试切换Node.js版本到稳定分支(如v16.x或v20.x),部分旧版coc.nvim对高版本Node.js支持不佳,更换后重启Neovim测试。
- 解决权限问题:以管理员身份启动Neovim,避免因系统权限不足导致无法 spawn 子进程。
- 检查杀毒软件拦截:临时关闭杀毒软件或防火墙,若能正常启动,将clangd/ccls可执行文件添加到白名单。
- 切换到WSL环境:若Windows环境问题无法解决,可在WSL中配置Neovim与clangd,Linux环境下LSP服务兼容性更稳定。
内容的提问来源于stack exchange,提问作者Erfan_khabir
相关产品推荐
相关产品推荐

