如何快速编译几个Yesod项目?

时间:2013-12-25 04:53:11

标签: haskell cabal yesod

据我所知,制作新项目yosogyosog2我会做以下事情

$ yesod init
$ cd yosog
yosog$ cabal sandbox init
yosog$ cabal install

$ yesod init
$ cd yosog2
yosog2$ cabal sandbox init
yosog2$ cabal install

但每个cabal install都需要永远。如果每个项目需要永久编译,我怎么想制作一堆Yesod项目呢?

2 个答案:

答案 0 :(得分:4)

听起来你真正要做的就是让多个独立的项目重用同一个cabal沙箱。您可以通过为--sandbox命令指定共享cabal sandbox选项来执行此操作。但请注意,通过共享沙箱,您将放弃沙箱要提供的一些保护。

答案 1 :(得分:1)

同时运行多个项目Yesod有点不寻常。每个都需要自己的tcp端口,并运行一个完全独立的服务器。两个Yesod项目通常表示完全不同的网站彼此无关。

您可以在一个项目中放置多个处理程序和路由,因此如果您有相关的网页/ API,则可以使用单个命令安装它们。如果你有真正模块化和可重用的部分,你可以将这些处理程序放在库包中,但主项目仍然可以在一个Yesod程序下构建和安装。