我正在使用 Stack 从命令行设置、构建和运行我的 Haskell 项目。我想使用 IntelliJ 作为我的 IDE,但是在将 Stack 配置为我的构建工具时遇到了问题。
我使用 Stack 按照 Stack User Guide 中的说明在命令行上创建并运行“Hello, World”Haskell 程序。 .一切正常。
我在 IntelliJ 上安装了 HaskForce 插件。 Build, Execution, Deployment -> Compiler -> Haskell Compiler 选项卡让您可以选择使用 Stack 构建和使用 Cabal 构建。我选择使用堆栈构建并像这样配置它。
我可以使用 Haskell Stack Run 配置运行项目。控制台输出是正确的。
/Users/williammcneill/Library/Haskell/bin/stack exec hellohaskell-exe --
Hello, Haskell.
但是,我无法弄清楚如何通过 IDE 重建项目。例如,如果我更改输出文本并重新运行程序,我仍然会看到原始的“Hello, Haskell”输出。构建 -> 制作项目 |制作模块 | Rebuild Project 什么都不做。
Project Settings->Artifacts 选项卡没有列出任何内容,我看不到在此处添加 Haskell 可执行文件的方法。
我的解决方法是从命令行构建我的 Haskell 程序,即使我从 IDE 进行编辑也是如此。
(在一般的 Haskell 编译器设置中指定项目特定的
stack.yaml
文件的路径对我来说也很奇怪,但这是我可以看到如何使用 Stack 进行构建的唯一方法。)如何设置 IntelliJ 以使用 Stack 构建 Haskell 项目?
ghc 7.10.3,堆栈 1.1.2,HaskForce 0.3-beta.33,IntelliJ IDEA Ultimate 2016.1.3,OS X 10.11.5
这是 Haskforce issue 282 .
最佳答案
如果你想点击 IntelliJ 运行按钮来运行项目并使用 Stack,我认为你应该使用 IntelliJ Haskell Plugin正如@mrek 所说。
HaskForce plugin此刻说
Note: Run configurations are not supported for stack at the moment. This is for cabal projects only.
所有的安装说明(从安装 Stack 到项目设置)都在 readme 中。 ,但我需要稍微改变一下,所以我把我的版本放在这里。
每个想要使用 Haskell 的人的安装说明
stack install hindent
和 stack install stylish-haskell
(这可能需要一段时间)。 C:\Users\username\AppData\Roaming\local\bin\stack.exe
或 /usr/bin/stack
)并设置默认值(如果它还不是默认值)。app/Main.hs
.您可以将其中的所有内容替换为 main = putStrLn "Hello Haskell!"
. 您可以通过单击 IntelliJ 底部的终端然后运行
stack ghci
来启动交互式控制台。 .当您键入 main
您正在调用 main,依此类推。您也可以使用
stack test
而不是测试运行配置。
关于haskell - 如何设置 IntelliJ 以使用 Stack 构建 Haskell 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37754956/