基于Clojure/ClojureScript/Figwheel/Lein的Web应用源码修改后浏览器不更新如何解决?
M1 Mac下Figwheel热更新失效的修复方案
1. 升级Figwheel依赖
项目里的Figwheel版本大概率对Apple Silicon支持不够完善,打开project.clj找到Figwheel相关依赖(比如figwheel-main或lein-figwheel),替换成最新稳定版,例如:
[com.bhauman/figwheel-main "0.2.18"]
执行lein deps重新拉取依赖后重启项目。
2. 强制开启文件轮询监听
M1的文件系统事件监听可能存在兼容性bug,让Figwheel改用轮询模式。在figwheel-main.edn(或对应配置文件)里添加:
:watch-options {:polling true}
如果用的是lein-figwheel,直接把这段配置加到project.clj的:figwheel块里。
3. 验证文件访问权限
检查Brave浏览器是否有权限访问项目目录:
- 打开系统偏好设置→安全性与隐私→文件与文件夹
- 确认Brave被勾选允许访问项目所在的文件夹
Figwheel需要监听文件变化,确保项目目录没被系统隐私机制限制。
4. 用Rosetta 2运行Leiningen
部分老依赖在Rosetta兼容模式下更稳定:
- 找到终端应用,右键→显示简介→勾选“使用Rosetta打开”
- 重启终端,重新执行
lein fig-dev启动项目
5. 清理Figwheel缓存
删除项目根目录下的.figwheel文件夹,以及target目录里的Figwheel编译产物,然后重新启动项目。
内容的提问来源于stack exchange,提问作者Pedro Delfino
相关产品推荐
相关产品推荐

