我有两个堆栈项目,A和B。 B的stack.yaml为:
resolver: lts-12.10
packages:
- .
- ../path/to/A/
其中存在文件../path/to/A/stack.yaml,并且A的目录中的stack build
成功构建。
在B的目录中,我stack build --ghc-options -v
,并堆叠构建A,然后继续尝试构建B,但未找到A的模块。我不知道堆栈是如何工作的,但是详细输出显示GHC仅在./.stack-work和./src/中查找-不在A的目录中。运行stack dot
会产生一个带有节点A和B的图,但它们之间没有箭头。就像堆栈看到A一样,而不是B的依赖。
stack solver
报告不需要进行任何更改。
使用最新堆栈(v1.7.1)
答案 0 :(得分:0)
在another SO article上找到了答案:我缺少的那一部分是将A的软件包名称添加到B的dependencies
文件的package.yaml
列表中。以前没有发生过这种情况,因为我错误地认为dependencies
仅用于上游存储库软件包。