Haskell 堆栈构建按预期工作,但堆栈runghc可以';找不到本地模块

Haskell 堆栈构建按预期工作,但堆栈runghc可以';找不到本地模块,haskell,import,cabal,haskell-stack,Haskell,Import,Cabal,Haskell Stack,因此,我有一个Haskell项目(使用堆栈管理),其结构如下: . ├── Main.hs ├── Other1.hs ├── subfolder    └── Other2.hs 其中,Main模块同时导入Other1和Other2,如下所示: import Other1 import Other2 我的.cabal文件上写着: name: (...) executable Main hs-source-dirs: ., subfolder main-is: Main.hs o

因此,我有一个Haskell项目(使用堆栈管理),其结构如下:

.
├── Main.hs
├── Other1.hs
├── subfolder
    └── Other2.hs
其中,
Main
模块同时导入
Other1
Other2
,如下所示:

import Other1
import Other2
我的
.cabal
文件上写着:

name: (...)

executable Main
hs-source-dirs:
  .,
  subfolder
main-is: Main.hs
other-modules:
  Other1
  Other2
现在,如果我运行
stack build
所有功能都很好,所有模块都经过编译,看起来没有什么问题。但是,如果我尝试使用
stack runghc Main
执行程序,则找不到模块
Other2
(子文件夹中的模块)


为什么会这样?如何执行我的代码?

stack exec Main
?忘了提到
stack exec Main
生成路径上找不到名为Main的
可执行文件…
(即使
stack build
说它实际上是在
stack exec
检查的路径之一中安装
可执行文件Main)