で推奨される手順に従った後、
https://github.com/samestep/boot-refresh
ブート プロジェクト内から cider-jack-in を使用すると、意図したホット リロード動作が機能します。
ただし、次のシナリオでは機能しません。このブート タスクを検討してください。
(deftask dev2 []
(comp
(serve
:handler 'app.core/handler
:reload true
:port 3000
:httpkit true
:nrepl {:port 4000})
(watch) (refresh) ;; doesn't work with or without this line
))
関連部分は:nrepl
キーワードです。
このタスクが起動された後、ポート 4000 で nrepl サーバーに接続できます。これには、開発中にアプリケーションの実際の状態にアクセスできるという利点があります。(詳細については、この投稿を参照してください)
これは、 を介して行うことができますcider-connect
。ただし、ホットリロードはなくなりました。この:reload true
オプションは、ここで混乱する可能性があります。これは、http 要求が完了したときにのみソースのリロードをトリガーします。しかし、ブートリフレッシュのより一般的なアプローチを探しています。
注: ここでの意図は、サーバー側でライブ リロード動作を行うことです。これは、クライアント側で知られている概念 (figwheel または boot-reload) に似ています。