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

CIDER无法与shadow-cljs项目协同使用的解决方法求助

解决Clojure/CLJS项目中CIDER与shadow-cljs协同问题

1. 修复cider-jack-in提示npx shadow-cljs不在exec-path的问题

  • 先在终端执行which npx,确认npx的实际路径(M1 Mac上Homebrew安装的npx通常在/opt/homebrew/bin)。
  • 如果终端能找到npx但Emacs找不到,在Emacs配置文件中添加路径:
    (add-to-list 'exec-path "/opt/homebrew/bin") ; 替换为你的npx实际路径
    
  • 也可以在项目根目录创建.dir-locals.el文件,指定shadow-cljs命令路径:
    ((clojure-mode . ((cider-shadow-cljs-command . "/opt/homebrew/bin/npx shadow-cljs"))))
    
  • 重启Emacs或重新加载配置后,再尝试cider-jack-in。

2. 修复cider-connect连接失败的问题

  • 启动shadow-cljs watch app后,等待日志输出nREPL server started on port 8230(默认端口为8230,不是8320)。
  • 执行cider-connect时,主机仅需输入localhost,不要添加http://前缀(nREPL是TCP连接,无需HTTP协议标识),端口输入8230即可完成本地连接。

3. 修复SSH隧道连接失败的问题

  • nrepl-use-ssh-fallback-for-remote-hosts是针对远程主机的配置,本地连接完全不需要开启。将其设置为nil:
    (setq nrepl-use-ssh-fallback-for-remote-hosts nil)
    
  • 本地连接直接使用常规的cider-connect即可,无需SSH隧道。

M1 Mac额外注意事项

  • M1架构的Homebrew默认安装路径为/opt/homebrew/bin,确保该路径在Emacs的exec-path列表中(可通过M-x exec-path查看当前路径),避免工具路径缺失导致的各种问题。

内容的提问来源于stack exchange,提问作者Pedro Delfino

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.21 10:54:20