Gulp Error: Cannot find module 'jshint/src/cli'

Gulp Error: Cannot find module 'jshint/src/cli'

所以我已经全新安装了 El Capitan,我正在给这些任务 运行ners 另一个任务。

我正在关注 sitepoint's An introduction to Gulp.js,但我卡在了第四步,当我尝试 运行 gulp jshint 我得到“Error: Cannot find module 'jshint/src/cli'

我不知道是什么原因造成的,这就是我在这里问的原因。下面是一些有助于解决此问题的屏幕抓图。

一如既往,我永远感激任何建议。

您还需要安装 jshint,这将解决问题。

> npm install --save-dev jshint gulp-jshint

事实证明,我需要使用 npm install --save-dev jshint gulp-jshint 而不是教程所述的 npm install gulp-jshint --save-dev。在 https://github.com/spalger/gulp-jshint/issues/131 找到了关于此的讨论,非常感谢 @user3042437 提供 link.

有时措辞的顺序很重要。我发现这个 npm install --save-dev jshint gulp-jshint 不起作用,但这个 npm install jshint gulp-jshint --save 有效

这里你的目标是 jshint,你可能没有安装它。 (您在 gulp.task('jshint', function() { 中执行此操作。)

试试这个:

gulp.task('gulp-jshint', function() {

这与您require的处理方式相符。

var jshint = require('gulp-jshint');

如果在输入上面的正确语法后仍然出现错误, (npm install --save-dev jshint gulp-jshint),有效。

在你再次 运行 安装之前,进入你的 package.json 文件并在你 运行 安装之前删除 jshint 和 gulp-jshint 的行,使请务必编辑 package.json 以删除调用 jshint 和 gulp-jshint 的行,否则错误将持续存在。

有一个绕过这个错误的临时解决方案。如果您不想在任何地方的应用程序中使用 jshint.js 文件,即使这个临时解决方案也可以正常工作。

  1. 转到您的 gulpfile.js 文件。
  2. 注释第 4 行中的代码。

    var jshint = require('gulp-jshint');
    
  3. 现在,运行 gulp 在您的终端中输入命令。您的服务器即将启动。