Reputation: 14532
I tried this tutorial to basically setup my gulp project and activate less processing and watching. It works. Now I'd like to install the modules globally, in order to acces them from everywhery on the machine and not to installa them for every project:
npm install --global gulp-less
npm install --global gulp-watch
npm install --global gulp-autoprefixer
npm install --global gulp-plumber
Now I want to run gulp in my project folder, but gulp cannot find the globally installed modules:
$ cd /my/project
$ gulp
module.js:327
throw err;
^
Error: Cannot find module 'gulp-less'
at Function.Module._resolveFilename (module.js:325:15)
at Function.Module._load (module.js:276:25)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
at Object.<anonymous> (/root/temp/gulptest/gulpfile.js:9:12)
at Module._compile (module.js:409:26)
at Object.Module._extensions..js (module.js:416:10)
at Module.load (module.js:343:32)
at Function.Module._load (module.js:300:12)
at Module.require (module.js:353:17)
at require (internal/module.js:12:17)
How to get it working and use global gulp modules?
Upvotes: 4
Views: 9251
Reputation: 436
For what it's worth, I solved this by placing this line at the top of my gulpfile.js
module.paths = module.paths.concat(module.parent.paths);
My parent module knew my npm global directory, but while running gulpfile.js, a child module seems to be created which doesn't. Instead, module paths is only relevant to the current directory from where the project is being run from and then each previous directory back to the root of my drive.
Upvotes: 0
Reputation: 14532
The solution was npm-link
. I had to link all my local packages to global counterparts:
npm link gulp
npm link gulp-less
npm link gulp-watch
npm link gulp-autoprefixer
npm link gulp-plumber
npm link path
Now it works.
Some StackOverflow posts to this subject:
Upvotes: 9
Reputation: 53
If you have previously installed a version of gulp globally, please run npm rm --global gulp
to make sure your old version doesn't collide with gulp-cli.
$ npm install --global gulp-cli
$ npm install --save-dev gulp
Read more... https://github.com/gulpjs/gulp/blob/master/docs/getting-started.md
Upvotes: 1