无法运行Gulp:无法找到模块'gulp-util'

Nic*_*uin 165 node.js npm gulp

在Windows 7上,我按照此处的说明安装了gulp:http://markgoodyear.com/2014/01/getting-started-with-gulp/:

  • npm install gulp -g
  • 在我的app文件夹中: npm install gulp --save-dev
  • 我创建了一个gulpfile.js文件.

但是,当我尝试运行时gulp,我收到此错误消息:

module.js:340
throw err;
      ^
Error: cannot file module 'gulp-util'
at Function.Module._resolveFilename (module.js:338:15)
Run Code Online (Sandbox Code Playgroud)

等等

但是gulp-util存在(在本地app文件夹中):

node_modules
    gulp
        node_modules
            gulp-util
Run Code Online (Sandbox Code Playgroud)

知道可能是什么原因?

Ila*_*mer 272

UPDATE

从更高版本开始,无需手动安装gulp-util.

检查新的入门页面.

如果您仍遇到此问题,请尝试重新安装项目的本地软件包:

rm -rf node_modules/
npm install
Run Code Online (Sandbox Code Playgroud)

期待的回答

您还需要安装gulp-util:

 npm install gulp-util --save-dev
Run Code Online (Sandbox Code Playgroud)

gulp docs开始(3.5):

项目devDependencies中安装gulp和gulp -util

  • 所以单凭这个问题只有150K的观点,我很想知道这个问题的根源是什么......这种情况经常发生在我身上,我猜我不是唯一的一个.这加起来浪费了很多时间! (7认同)
  • 如果你在Windows上,可以通过`npm install -g rimraf`使用`rimraf` (4认同)
  • 在Ubuntu 17.10上,`rm -rf node_modules`和`npm install`不起作用.相反,我不得不预先形成:`npm install gulp -g`.奇迹般有效! (4认同)

num*_*web 65

如果您有package.json,则可以使用以下命令安装所有当前项目依赖项:

npm install
Run Code Online (Sandbox Code Playgroud)

  • 我不知道为什么在我的情况下,这不起作用.我不得不逐个安装丢失的软件包.然后做构建.奇怪的. (2认同)

tim*_*ann 17

在我的情况下,任何答案都没有帮助.最终帮助的是删除bowergulp(我在我的项目中使用它们):

npm remove -g bower
npm remove -g gulp
Run Code Online (Sandbox Code Playgroud)

之后我再次安装它们:

npm install -g bower
npm install -g gulp
Run Code Online (Sandbox Code Playgroud)

现在它工作得很好.

  • 这解决了我在gulp-util没有找到through2时遇到的持久性问题,尽管它存在于本地node_modules文件夹中并且重复'rm -rf node_module'尝试.删除和重新安装全球gulp就可以了. (2认同)
  • 我在 Windows 上遇到了问题,唯一的解决方法是这个,但在我需要使用 msi 文件修复节点安装之前 (2认同)

C-N*_*187 10

Linux Ubuntu 18:04用户在这里。迄今为止,我尝试了该板上的所有解决方案。即使我在上面接受的答案中读到“从更高版本开始,无需手动安装 gulp-util”。,这对我有用。(...也许 bc 我在 Ubuntu 上?我不知道。)

回顾一下,当我通过运行检查是否安装了 gulp 时,我不断收到“找不到模块‘gulp-util’ ”错误:

gulp --version
Run Code Online (Sandbox Code Playgroud)

...再次,'gulp-util' 错误不断出现...

所以,我遵循了上面列出的 npm install [package name] 建议,但最终得到了其他几个需要安装的包。并且有一个已经存在的问题,我不知道如何替换它。...我将把我必须使用的所有包/安装命令放在这里,作为参考,以防其他人遇到这个问题:

sudo npm install -g gulp-util
Run Code Online (Sandbox Code Playgroud)

(然后我收到了'pretty-hrtime'的错误,所以我添加了它,然后其他的错误:找不到模块 ___ 在每次 gulp --version 检查后不断弹出。......所以我只是继续安装每个。 )

sudo npm install -g pretty-hrtime
sudo npm install -g chalk
sudo npm install -g semver --force
Run Code Online (Sandbox Code Playgroud)

(没有--force,在我的系统上,我收到一个错误:“EEXIST:文件已经存在,符号链接”。不推荐使用--force,但可以通过其他方式识别。)

sudo npm install -g archy
sudo npm install -g liftoff
sudo npm install -g tildify
sudo npm install -g interpret
sudo npm install -g v8flags
sudo npm install -g minimist
Run Code Online (Sandbox Code Playgroud)

现在 gulp --version 终于显示:CLI version 3.9.1 Local version 3.9.1


小智 7

尝试安装缺少的模块。

npm install 'module-name'
Run Code Online (Sandbox Code Playgroud)


小智 6

这里有同样的问题,我在搜索后尝试的任何方法都不起作用。直到我在某处看到有关全局或本地安装的评论。寻找:

C:\Users\你的名字\AppData\Roaming\npm\gulp

我确实找到了一个过时的版本。所以我重新安装了 gulp:

npm install gulp --global
Run Code Online (Sandbox Code Playgroud)

这神奇地解决了我的问题。


Nik*_*dia 5

您应该将它们安装为 devDependency:
- gulp-util
-gulp-load-plugins

然后,您可以通过以下方式使用它们:

var plugins     = require('gulp-load-plugins')();
Use gulp-util as : plugins.util()
Run Code Online (Sandbox Code Playgroud)

或这个:

var util = require('gulp-util')
Run Code Online (Sandbox Code Playgroud)