对于非平凡的项目,通常将它分成几个包(特别是,我通常使用包含1-10个项目的Visual Studio C#解决方案)。
我每次修改另一个包中使用的包时,我当前的Haskell工作流都会执行cabal clean && cabal configure && cabal install --force-reinstall
。
这样可以正常工作,但我希望能够使用几个Haskell项目,就像只有一个项目一样(理想情况下,如果A
和B
项目被修改,那么使用ghci A
检测B
上的更改})。
如果某些包A
(在开发中)在多个“工作区”中共享,则建议的解决方案(如果可能)也应该正常工作。
我找了,但独特的相关回复(Haskell Cafe, Working with multiple projects 2009)表明我当前的工作流程是解决方案。
欢迎任何解释它的教程(工作区,共享“在开发中”包中......)
非常感谢!!! :)
(我正在使用ghc
)
答案 0 :(得分:3)
因此,基本上您可以使用cabal-dev
创建要用于给定项目的包的本地沙箱。这将阻止可能存在冲突的包装要求的不同项目,从而解决所有问题。
这是一篇关于reddit的好文章,解释了基础知识。
http://www.reddit.com/r/haskell/comments/f3ykj/psa_use_cabaldev_to_solve_dependency_problems/