2

I've spent an hour this morning already looking at the existing SO answers as well as elsewhere on the internet.

When I run gulp, I get the following error

➜  qwer git:(master) ✗ gulp
module.js:341
    throw err;
    ^

Error: Cannot find module 'gulp-util'
    at Function.Module._resolveFilename (module.js:339:15)
    at Function.Module._load (module.js:290:25)
    at Module.require (module.js:367:17)
    at require (internal/module.js:16:19)
    at Object.<anonymous> (/usr/local/lib/node_modules/gulp/bin/gulp.js:4:13)
    at Module._compile (module.js:413:34)
    at Object.Module._extensions..js (module.js:422:10)
    at Module.load (module.js:357:32)
    at Function.Module._load (module.js:314:12)
    at Function.Module.runMain (module.js:447:10)

I have followed the suggestions to clear out node_modules and npm install again; no dice.

I have installed an older version of node/npm and tried, making sure to remove global installs of gulp. Still no luck. (https://github.com/gulpjs/gulp/blob/master/docs/getting-started.md)

npm rm --global gulp

I can run gulp on a remote environment and it works just fine, so it appears to be a local configuration issue.

➜  qwer git:(master) ✗ node -v
v5.10.1
➜  qwer git:(master) ✗ npm -v
3.8.3

package.json

{
  "name": "qwer",
  "version": "1.0.0",
  "description": "asdlf kjalsdk fjalsdk jfla",
  "main": "config/gulpfile.js",
  "dependencies": {
    "babel-preset-es2015": "^6.6.0",
    "babelify": "^7.2.0",
    "backbone": "^1.3.3",
    "del": "^2.2.0",
    "gulp": "^3.9.1",
    "browserify": "^13.0.0",
    "gulp-concat": "^2.6.0",
    "gulp-rename": "^1.2.2",
    "gulp-sass": "^2.2.0",
    "gulp-sourcemaps": "^1.6.0",
    "gulp-uglify": "^1.5.3",
    "jquery": "^2.2.3",
    "jstify": "^0.14.0",
    "underscore": "^1.8.3",
    "vinyl-buffer": "^1.0.0",
    "moment": "^2.13.0",
    "yargs": "^4.6.0",
    "vinyl-source-stream": "^1.1.0"
  },
  "devDependencies": {
    "browser-sync": "^2.12.3",
    "gulp": "^3.9.1"
  },
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": "git@crystal.github.com:crystalcommerce/pos-frontend.git"
  },
  "author": "John Doe",
  "license": "ISC"
}

gulpfile.js

var gulp = require('gulp');

gulp.task('default', function() {
  // place code for your default task here
});

Steps to reproduce error

rm -rf node_modules/
npm install
gulp
David Vezzani
  • 1,449
  • 16
  • 24
  • Same question, but complementary answers to https://stackoverflow.com/questions/21406738/cant-get-gulp-to-run-cannot-find-module-gulp-util – dskrvk Oct 28 '17 at 01:29

2 Answers2

6

It appears I had an old version of gulp that wasn't getting removed when I called npm rm --global gulp.

which gulp
➜ /usr/local/bin/gulp

# remove old version; not sure where this came from; perhaps brew?
rm /usr/local/bin/gulp

which gulp
➜ /Users/davidvezzani/.nvm/versions/node/v5.10.1/bin/gulp

# for good measure
rm /Users/davidvezzani/.nvm/versions/node/v5.10.1/bin/gulp

npm install --global gulp-cli

which gulp
➜ /Users/davidvezzani/.nvm/versions/node/v5.10.1/bin/gulp

gulp

[07:15:22] Using gulpfile ~/reliacode/crystal_commerce/qwer/gulpfile.js
[07:15:22] Starting 'default'...
[07:15:22] Finished 'default' after 71 μs
David Vezzani
  • 1,449
  • 16
  • 24
0

Try to add npm-shrink-wrap to force lock npm package json to use the specific gulp version irrespective of whatever is there in the npm global cache,or you can try cleaning the npm cache folder using npm clean cache.

Sudipto Sarkar
  • 346
  • 2
  • 11