残念ながら、grunt-contrib-watchとgrunt-contrib-connectはうまく機能していないようです。
grunt-contrib-connect のreadmeには次のように書かれています。
このサーバーは、grunt が実行されている間のみ実行されることに注意してください。grunt のタスクが完了すると、Web サーバーが停止します。この動作は keepalive オプションで変更でき、grunt connect::keepalive などのタスクを実行することでアドホックに有効にすることができます。
罰金。しかし、監視タスクを接続サーバーと並行して実行したい場合はどうすればよいでしょうか? そのようです:
connect: {
server: {
options: {
port: 8000,
hostname: 'localhost',
keepalive: true
}
}
},
watch: {
options: {
livereload: true
},
files: ['**'],
tasks: ['connect'],
}
ここではconnect
、ファイルが変更されたときにタスクが実行されます。connect のオプションを true に設定すると、grunt-contrib-watch は技術的にタスクを完了していないkeepalive
ため監視を停止します。オプションを偽ると、接続サーバーはタスクの完了後に停止します。keepalive
はい、コマンドを実行できました...
$ grunt connect
$ grunt watch
...別々のシェルですが、1 つのコマンドでそれらを実行する方法はありませんか?