堆栈安装 elm-export 失败

stack install elm-export fails

我想使用堆栈安装 elm-export 包。需要在servant-elm示例中引入。

就像:

shell> 堆栈安装 elm-export

shell>

没有错误信息。所以我认为它已安装。


但是当我堆叠构建时,

错误信息显示:

test-0.1.0.0: build (exe)
Preprocessing executable 'test' for test-0.1.0.0..
Building executable 'test' for test-0.1.0.0..
[1 of 1] Compiling Main             ( src\Main.hs, .stack- 
work\distc8418a7\build\test\test-tmp\Main.o )

C:\Code\Haskell_Stack-Projects-That-Need-Dependency\test\src\Main.hs:6:1: 
error:
Could not find module ▒▒Elm▒▒
Use -v to see a list of the files searched for.
  |
6 | import           Elm          (Spec (Spec), specsToDir, toElmDecoderSource,
  | 

 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^...

我的问题是,我在哪里可以检查是否安装了软件包?我该如何解决这个问题?


ps。 Cabal 成功安装了 elm-export 和 servant-export 以及 运行ghc 成功 运行 示例代码。现在我正在尝试使用堆栈来安装包以防止破坏某些依赖项。


如果您想在 haskell 堆栈包中使用此库,则不需要 运行 stack install。相反,您需要将其添加到您的项目依赖项中。

HaskellStack User Guide (adding dependencies)

根据您拥有的堆栈版本,这可能位于我认为的两个位置之一:

  • 如果您有 packages.yaml,请将其添加到 'dependencies'

    部分
    dependencies:
    
        - base >= 4.7 && < 5
        - elm-export >= 0.6 && < 1.0
    
  • 如果你没有packages.yaml,直接给你添加cabal文件

    library
      hs-source-dirs:
          src
      build-depends:
          base >=4.7 && <5
        , elm-export >= 0.6 && < 1.0
    

仅供参考:stack install 用于安装 可执行文件 ,然后您可以在命令行上使用它。它可以在 haskell 堆栈项目的内部或外部使用。 我认为 elm-export 没有声明任何可执行文件,这就是它没有输出任何内容的原因。一些示例是 pandoc、hindent 等。这些是 haskell 库,它们还提供可以使用堆栈安装的可执行文件。

$ stack install pandoc
...
Copied executables to /Users/<me>/.local/bin:
- pandoc
$ pandoc --help
pandoc [OPTIONS] [FILES]
  -f FORMAT, -r FORMAT  --from=FORMAT, --read=FORMAT