为什么 'stack ghci' 不加载我的测试文件?

Why does 'stack ghci' not load my test files?

我的项目结构如下所示

请注意 'api/test' 目录包含 'Spec.hs','api' 是我的项目根目录,其中包含我的“.cabal”和“.yaml”文件。

当我从项目根目录(api)运行 $ stack ghci 时,api/test/Spec.hs 不在范围内。而我在 api/src/ 中的模块在范围内。

为什么api/test中定义的模块不在范围内?

我的 .cabal 文件配置正确,因此 $ stack test 能够成功 运行 api/test/Spec.hs.

的代码

我什至无法从 ghci 加载 Spec.hs 模块。 运行ning 正在尝试这样做 > :l test/Spec.hs 从 ghci 中给出许多 'Failed to load interface' 错误。

默认情况下 "stack ghci" 只加载库,而不是测试、可执行文件或基准测试。使用 "stack ghci --test" 也尝试加载所有测试。