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

VS Code Haskell扩展无法识别GHC版本问题求助

VS Code Haskell扩展无法识别Stack管理的GHC版本解决方案

问题背景

在VS Code中使用Haskell扩展时出现无法找到GHC版本的错误,但在终端手动执行以下命令可正常返回GHC 9.8.2版本:

stack --stack-yaml /home/user/haskell/h5/stack.yaml exec ghc -- --numeric-version

项目的stack.yaml配置如下:

snapshot: ghc-9.8.2

packages:
- .

解决步骤

  • 指定扩展的GHC路径
    打开VS Code设置(Ctrl+,),搜索Haskell: GHC Path,将其设置为Stack为当前项目管理的GHC绝对路径。可通过以下命令获取该路径:

    stack --stack-yaml /home/user/haskell/h5/stack.yaml exec which ghc
    

    示例路径:/home/user/.stack/programs/x86_64-linux/ghc-9.8.2/bin/ghc

  • 确保VS Code继承正确的Shell环境

    • 关闭VS Code,从能正常执行Stack命令的终端中启动VS Code(输入code .),让VS Code继承该终端的环境变量。
    • 检查VS Code的terminal.integrated.env.<你的系统>设置(如Linux对应terminal.integrated.env.linux),确保PATH包含Stack的安装路径(通常是~/.stack/bin)。
  • 重启LSP服务与VS Code
    打开命令面板(Ctrl+Shift+P),执行Haskell: Restart Haskell LSP Server,之后重启VS Code使配置生效。

  • 统一项目与全局Stack配置
    执行stack config get resolver查看全局resolver版本,若与项目的ghc-9.8.2不一致,在项目目录下执行以下命令设置本地resolver:

    stack config set resolver ghc-9.8.2 --local
    
  • 更新Haskell扩展
    打开VS Code扩展市场,找到Haskell扩展,安装最新版本,新版本可能修复了路径识别相关的bug。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.13 14:12:05