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

如何用Haskell Stack清理项目级GHC、依赖及构建文件?

清理Stack相关内容的内置命令

好问题!Stack其实提供了一系列内置命令来帮你清理不同范围的内容,不用手动去删目录,整理一下不同场景对应的方法:

项目本地层面的清理

如果你只想清理当前项目的构建产物和相关缓存:

  • stack clean:这是最常用的基础清理命令,会自动删除项目根目录下的.stack-work文件夹(里面存着项目的构建输出、中间文件等),快速释放项目本地的磁盘空间。
  • stack clean --full:比普通清理更彻底,除了.stack-work,还会清理项目依赖的构建缓存,适合你想完全重置项目构建状态的场景。

全局层面的清理

如果要处理~/.stack下的GHC、快照、全局缓存这些内容:

  • stack purge:这个命令会一次性清理全局范围内的非必要文件,包括~/.stack/programs里的GHC安装包、~/.stack/snapshots里的快照依赖、~/.stack/setup-exe-cache里的缓存文件等。执行后,下次构建项目需要重新下载GHC和所有依赖,适合你想彻底清理Stack全局缓存的情况。
  • stack ghc remove <GHC版本号>:如果你只想删掉某个特定版本的GHC(比如不再使用的旧版本),可以用这个命令,比如stack ghc remove 9.2.8,只会移除指定版本,不会影响其他GHC版本和快照。
  • stack snapshot delete <快照ID>:如果要清理某个特定的快照(比如某个旧的LTS版本),用这个命令,比如stack snapshot delete lts-20.15,会删除对应快照的所有依赖缓存。
  • stack setup --clean:这个命令会清理~/.stack/programs下的GHC安装文件,执行后下次运行stack setup会重新下载并安装所需的GHC版本。

这样根据你的需求选择对应的命令就好,不用手动去逐个删除目录啦。

内容的提问来源于stack exchange,提问作者luceat-lux-vestra

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:01:19