今天早上我已经花了一个小时查看了现有的SO答案以及互联网上的其他地方。
当我运行walp
时,我得到以下错误
➜ 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)
我已经遵循了再次清除node_modules
和npm安装
的建议;没有机会。
我已经安装了一个旧版本的node/npm并尝试过,确保删除gulp的全局安装。还是不走运。(https://github.com/gulpjs/gulp/blob/master/docs/getting-started.md)
npm rm --global gulp
我可以在远程环境中运行gulp,它工作得很好,所以这似乎是本地配置问题。
➜ qwer git:(master) ✗ node -v
v5.10.1
➜ qwer git:(master) ✗ npm -v
3.8.3
包裹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"
}
格尔普菲尔。js
var gulp = require('gulp');
gulp.task('default', function() {
// place code for your default task here
});
重现错误的步骤
rm -rf node_modules/
npm install
gulp
当我调用npm rm--global gup
时,我似乎有一个旧版本的gup没有被删除。
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
尝试添加npm收缩包装以强制锁定npm包json以使用特定的gulp版本,而不管npm全局缓存中有什么,或者可以尝试使用npm clean cache清理npm缓存文件夹。