VS Code Haskell 扩展 - 无法确定项目正在使用什么 GHC 版本

And*_*rej 11 haskell visual-studio-code haskell-stack

当我在 VS Code 中打开一些 haskell 项目时,我收到以下消息:

\n

无法确定项目使用的 GHC 版本:\n/home/andrej/.config/Code - OSS/User/globalStorage/haskell.haskell/haskell-language-server-wrapper-1.2.0-linux -- project-ghc-version 退出,退出代码为 1:\n未找到“hie.yaml”。尝试发现项目类型!\n获取项目 GHC 版本失败,因为我们没有支架

\n

怎么解决呢?

\n

编辑:

\n

这是项目的树结构:

\n
.\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 .exercism\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 metadata.json\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 package.yaml\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 README.md\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 src\n\xe2\x94\x82\xc2\xa0\xc2\xa0 \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 ResistorColors.hs\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 stack.yaml\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 test\n    \xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 Tests.hs\n
Run Code Online (Sandbox Code Playgroud)\n

Ari*_*ham 6

由于您的项目有堆栈项目配置文件,Haskell 扩展应该能够确定它需要什么,并且hie.yaml对于像这样的简单项目通常不需要用于配置扩展的文件。

haskell-language-server,VS Code Haskell 扩展所基于的项目仍在积极开发中,并且经常遇到一些困难。以下内容可以帮助解决许多常见问题:

  1. 跑步
    stack clean
    stack build
    
    Run Code Online (Sandbox Code Playgroud)
  2. 按 Ctrl+Shift+P 并单击“Haskell:重新启动 Haskell LSP 服务器”(开始键入以查找它)。

哈斯克尔快乐!


小智 5

它们都不起作用,直到我删除/Users/sweirich/.ghc/x86_64-darwin-8.10.4/environments/default

删除默认值后,重新打开 VS Code。VS Haskell 扩展将重置设置,并且错误似乎消失了。

在https://issueexplorer.com/issue/haskell/haskell-language-server/2224找到答案