GoLand 无一键清理 Go 缓存快捷键,需在终端执行 go clean -cache(清构建缓存)或配置 External Tools 运行 go clean -modcache(清模块缓存),而 Invalidate Caches 仅清 IDE 自身索引,不影响 Go 编译缓存。

GoLand 本身没有「一键清理 Go 缓存」的快捷键,它不管理 $GOCACHE 或 $GOPATH/pkg/mod,这些是 Go 工具链自己的缓存。你得在终端里运行 go clean 命令——但可以配成 IDE 内置终端快捷操作。
为什么不能用 Settings → Clear Cache & Restart?
那个菜单项(File → Invalidate Caches and Restart)只清 GoLand 自己的索引、语法高亮缓存、符号跳转数据库等,和 Go 编译无关。它不会动 $GOCACHE、$GOPATH/pkg/mod 或 $GOPATH/pkg。清完 IDE 启动快了,但 go build 还是慢、改了代码不生效、磁盘空间照样涨。
在 GoLand 终端里快速执行 go clean -cache
这是最常用、最可控的方式,适合日常清理构建缓存:
- 打开 GoLand 底部的
Terminal标签页(快捷键Alt + F12) - 直接输入:
go clean -cache,回车 - 想顺手清模糊测试缓存?加一个:
go clean -fuzzcache - 如果提示
command not found: go,说明终端没加载你的 shell 配置(比如~/.zshrc),点终端右上角齿轮 →Shell path改成/bin/zsh -i(或对应 shell)
把 go clean -modcache 设为外部工具(带快捷键)
模块缓存($GOPATH/pkg/mod)体积大、误删影响大,不适合天天清,但需要时能一键触发很实用:
GoLand 2026.1.1 是 2026.1 发布后的首个维护修正版本,适合已经开始体验 2026.1 新功能并希望同步补丁的开发者。它更适合用于入门项目、现有项目迁移测试和 IDE 行为验证。
- 进
Settings → Tools → External Tools - 点
+→Add Tool - 填:
-
Name: Clean Modcache -
Program:go -
Arguments:clean -modcache -
Working directory:$ProjectFileDir$
-
- 点 OK 后,右键该工具 →
Assign shortcut,比如设成Ctrl + Alt + Shift + M - 之后随时按快捷键,就会在项目根目录下运行
go clean -modcache
注意:go clean -modcache 会清空整个模块缓存,下次 go build 要重下所有依赖——别在 CI 或发布前临时手抖按下去。
别碰 $GOPATH/pkg 里的东西,除非你真知道在干啥
有人看到 $GOPATH/pkg 占几十 GB,就 rm -rf $GOPATH/pkg,结果 go run main.go 开始疯狂下载依赖。因为:
-
$GOPATH/pkg/mod是模块源码缓存(go clean -modcache管) -
$GOPATH/pkg下的.a文件是旧 GOPATH 模式下的编译产物(go clean -i或go install相关) - 现在绝大多数项目走 Go Modules,
$GOPATH/pkg里那堆.a其实早就不参与构建了,删了也无感;但误删mod/就真伤筋动骨
真正该盯住的是 $GOCACHE(默认 ~/Library/Caches/go-build macOS / ~/.cache/go-build Linux),它才是构建变慢、逻辑不更新的元凶。定期 go clean -cache 比折腾 pkg 安全得多。

















