Yesod を使用して Web サイトで作業しています。通常のビルドを実行していますが、データベースに確実にデータを入力できないようです。データベースにデータを入力する2番目のhaskellプログラムがあり、次のようにcabalファイルに追加しました。
executable program
if flag(library-only)
Buildable: False
main-is: ../main.hs
hs-source-dirs: dist
build-depends: base
, myproject
, yesod-default
executable init
if flag(library-only)
Buildable: False
main-is: init.hs
hs-source-dirs: Init
build-depends: base
, directory
, persistent
, persistent-sqlite
, text
, myproject
, yesod-default
問題は、「cabal build」を実行すると、init.hs が変更されたときに init が再構築されないことです。これを実現するにはどうすればよいですか?
端末セッションの例を次に示します (init.hs を編集した後):
$ cabal build
Building myproject-0.0.0...
Preprocessing library myproject-0.0.0...
Registering myproject-0.0.0...
$ rm -rf dist/build/myproject/init
$ cabal build
Building myproject-0.0.0...
Preprocessing library myproject-0.0.0...
Registering myproject-0.0.0...
ありがとうございました。