使用 go clean -modcache 可彻底清除 $GOPATH/pkg/mod 下的模块缓存,适用于重置依赖;2. 执行 go mod tidy 能移除项目中未使用的依赖声明,保持 go.mod 和 go.sum 整洁;3. 可手动删除 $GOPATH/pkg/mod 或缓存目录下的特定模块文件夹以清理个别模块;4. 对于企业级代理需管理远程缓存,本地则建议定期运行 go clean -modcache 防止磁盘占用。推荐日常结合 go mod tidy 和定期清理缓存来优化构建效率与磁盘空间。

Go 模块在使用过程中会自动下载依赖并缓存到本地,时间久了可能会积累大量无用的模块文件。这些文件占用磁盘空间,影响构建效率。清理无用模块缓存可以通过以下几种方式实现。
该命令会删除整个 $GOPATH/pkg/mod 目录下的所有模块缓存,适用于想彻底重置依赖缓存的场景。
注意:执行后所有已下载的模块都会被清除,下次构建时需重新下载。执行命令:
go clean -modcache
如果只想清理当前项目中未实际引用的模块版本,可以结合 go mod tidy 来修正依赖关系,并移除冗余的 require 项。
立即学习“go语言免费学习笔记(深入)”;
操作步骤:
go mod tidy
这会自动移除 go.mod 和 go.sum 中不再使用的依赖声明,但不会删除磁盘上的缓存文件。要配合其他方式释放空间。
若只想删除某个特定模块的缓存,可以直接进入模块缓存目录手动删除对应文件夹。
模块缓存路径一般为:
$GOPATH/pkg/mod/cache/download/<module-path>
或者直接查看某个模块:
$GOPATH/pkg/mod/<module-name>@<version>
找到目标模块后,直接删除对应目录即可。
如果你使用的是公共代理如 goproxy.io 或 goproxy.cn,它们本身不保存你的私有模块。但对于企业内部搭建的模块代理,可能需要定期清理远程缓存。
本地仍建议定期执行 go clean -modcache 防止磁盘膨胀。
基本上就这些。日常开发推荐配合 go mod tidy 维护依赖整洁,定期执行 go clean -modcache 释放空间,避免缓存堆积。
以上就是Golang如何清理无用模块缓存的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号