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

运行clj编译ClojureScript时deps.edn报Map字面量错误如何修复

错误原因

这个报错是EDN解析器读取deps.edn时触发的语法错误:EDN要求Map结构必须是键值一一对应,总元素数为偶数,解析器检测到你项目下的deps.edn里存在不成对的Map元素。
你贴出来的配置文本本身语法合法,实际触发错误基本是这几个高频原因:

  • 括号错位/不配对:最常见的是:deps对应的依赖Map没正确闭合,导致下一行的:paths被算成了:deps内部Map的孤立键,没有对应值,直接让Map元素数变成奇数
  • 混入非法字符:从网页、教程复制配置时很容易带入零宽空格、中文标点(中文冒号、中文大括号、中文引号),这些字符不会正常显示,但会直接打断EDN解析
  • 书写遗漏:比如版本号漏写闭合引号、关键字漏写前导冒号,会让解析器把本来成对的键值拆成单个元素
修复步骤
  1. 清空当前deps.edn的所有内容,手动逐字输入以下配置(不要复制粘贴,避免带入隐形字符),注意所有标点都是英文半角格式:
{:deps {org.clojure/clojure {:mvn/version "1.10.3"}
        org.clojure/clojurescript {:mvn/version "1.10.773"}}
 :paths ["src"]}

补充:你原来的配置缺少Clojure核心依赖,就算EDN语法没问题,后续编译ClojureScript时也会抛出类找不到的错误,上面的配置已经补全了这个必需依赖。

  1. 保存文件后,回到项目根目录,重新执行编译启动REPL的命令即可:
clj -m cljs.main --compile appy.core --repl

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.29 11:03:24