Haskell-Stack错误:“在多个本地包中使用相同的包名”

时间:2018-01-25 04:38:16

标签: haskell-stack

我的机器上有两个不同的Haskell项目,每个项目都使用WordNet包。安装WordNet from Hackage时,构建失败,但是从github本地克隆并安装时,包已成功构建。

在我的两个项目中,我指向stack.yaml文件中的本地安装,如stack's documentation的“软件包和额外代码”部分所述。第一个项目成功构建。但是,当我尝试使用此本地依赖项构建第二个项目时,我收到以下错误。

$ stack build
The same package name is used in multiple local packages

WordNet used in:
- PLIndex "WordNet-1.1.0"
- PLOther (PLFilePath "../WordNet-ghc74")

为什么我不能在两个不同的项目中依赖相同的本地包?

有什么方法吗?

我已尝试在本地克隆包并指向stack.yaml

packages:
- .
- ../WordNet-ghc74

并且还直接在我stack.yaml的github上指向存储库。

packages:
- .
- location:
    git: http://github.com/mherzl/WordNet-ghc74.git
    commit: 35478c4ee8ce3fcb7b134901255818408fb934a1
  extra-dep: true

1 个答案:

答案 0 :(得分:3)

您可以在多个项目中使用相同的本地包。这看起来像您的包/ extra-deps中列出了WordNet-1.1.0和本地文件路径。如果不是这种情况,那么请在堆栈问题跟踪器上打开一个问题,并重现问题。另外,请确保您使用最新的稳定版堆栈(1.6.3)