stack new project yesod-postgres
を使用してYesodアプリケーションを作成しました。 Webアプリケーションの横に、同じデータベースモデルとデータベース接続を使用する別のプログラムを作成したいと思います。Yesodアプリケーションに応じてプログラムを作成する方法
第2のexecutable
セクション(最初のコピー)を別の名前のキャバルファイルに追加し、main-is: myprogram.hs
を追加しました。今すぐstack build && stack exec myprogram
を実行できます。私は、ビルドプロセスをスピードアップするにはどうすればよい
$ stack build
project-0.0.0: unregistering
yesod-persistent-1.4.0.6: configure
yesod-persistent-1.4.0.6: build
yesod-persistent-1.4.0.6: copy/register
yesod-form-1.4.9: configure
yesod-form-1.4.9: build
yesod-form-1.4.9: copy/register
yesod-auth-1.4.15: configure
yesod-auth-1.4.15: build
yesod-auth-1.4.15: copy/register
yesod-1.4.3.1: configure
yesod-1.4.3.1: build
yesod-1.4.3.1: copy/register
classy-prelude-yesod-0.12.8: configure
classy-prelude-yesod-0.12.8: build
classy-prelude-yesod-0.12.8: copy/register
project-0.0.0: build
Preprocessing library project-0.0.0...
In-place registering project-0.0.0...
Preprocessing executable 'myprogram' for project-0.0.0...
Linking .stack-work/dist/x86_64-linux/Cabal-1.22.5.0/build/myprogram/myprogram ...
Preprocessing executable 'project' for project-0.0.0...
Linking .stack-work/dist/x86_64-linux/Cabal-1.22.5.0/build/project/project ...
project-0.0.0: copy/register
Installing library in
/home/jakob/projects/project/project/.stack-work/install/x86_64-linux/lts-6.27/7.10.3/lib/x86_6
4-linux-ghc-7.10.3/project-0.0.0-1qruVQVcU0k2yXxF1Z1w7r
Installing executable(s) in
/home/jakob/projects/project/project/.stack-work/install/x86_64-linux/lts-6.27/7.10.3/bin
Registering project-0.0.0...
Completed 6 action(s).
:
問題は、ビルドは常に1分以上かかることでしょうか?どのようにスタックが毎回yesod依存関係を再構築するのを防ぐことができますか?
[Stack issue 2876](https://github.com/commercialhaskell/stack/issues/2876)として提出されました。 –
それは動作します!ありがとう、バグを提出して+1。 – schoettl