I am trying to use Gulp and Node.Js to stream my process for minifying and concatenating CSS/JS files for production.
Here is what I have done.
- I installed Node.Js on my Windows 7 machine.
- Installed Gulp globally using this command
npm install -g gulp
- Then I added a new User variable called
NODE_PATH
set it to%AppData%\npm\node_modules
After closing and re-opening my command line, I tried to run a gulp task from the command line (i.e. gulp css
). But that give me the following error
'gulp' is not recognized as an internal or external command
How can I get this to work?
When I opened the following path using the search bar in windows,
%AppData%\npm\node_modules
I see the following two folders
gulp
gulp-cli
I've tried to add %AppData%\npm\node_modules
to the Path
variable on my system variable, but it did not take it because that variable reached it's max allowed character limit.
I removed couple of paths from my Path
variable and added ;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
but still not working.
I even tried to set the path at run time using this command
PATH=%PATH%;C:\Users\[MyWindowsUserName]\AppData\Roaming\npm\node_modules
then run gulp
and still the same issues.
What am I missing here? What else do I need in order to get this to work?
Sorry that was a typo. You can either add node_modules to the end of your user's global path variable, or maybe check the permissions associated with that folder (node _modules). The error doesn't seem like the last case, but I've encountered problems similar to yours. I find the first solution enough for most cases. Just go to environment variables and add the path to node_modules to the last part of your user's path variable. Note I'm saying user and not system.
Just add a semicolon to the end of the variable declaration and add the static path to your node_module folder. ( Ex c:\path\to\node_module)
Alternatively you could:
In your CMD
EDIT
The last solution will work as long as you don't close your CMD. So, use the first solution for a permanent change.