grunt task to watch files without using fs.watch or fs.watchFile
npm install grunt-simple-watch --save-dev
Once that's done, add this line to your project's Gruntfile:
If the plugin has been installed correctly, running
grunt --help at the command line should list the newly-installed plugin's task or tasks. In addition, the plugin should be listed in package.json as a
devDependency, which ensures that it will be installed whenever the
npm install command is run.
Having all sort of weird issues with grunt watch?
This is because it currently uses an unstable node.js functionality - fs.watch()
What happend on my case
Im using grunt on a virtualbox dev server with Ubuntu 11.10 and Node 0.6.19. My host system is Windows 7.
My project files are on a shared folder between the host and server When i update files on the shared folder it does not trigger the fs.watch
DO NOT USE fs.watch
but solve it simply by polling for changes in the most basic/simple way.
This might be more CPU intensive, and might not work in high loads with many watched files. But im not sure if the original watch task would do the job as well on this case. i just did not check.
Install this grunt plugin next to your project's grunt.js gruntfile with:
npm install grunt-
Then add this line to your project's
(or simple place the task file simple_watch.js in your grunt/tasks directory..)
use the command: grunt simple-watch (instead of: grunt watch)
NO NEED TO CHANGE grunt.js configurations (your gruntfile)!
as it keeps on using the "watch" config.
Developed at SupersonicAds R&D labs.
Copyright (c) 2012 Amir Souchami Licensed under the MIT license.