2015-11-29 2 views
92

Итак, у меня есть новая установка El Capitan, и я даю этим бегунам задания еще один путь.Ошибка Gulp: не удается найти модуль 'jshint/src/cli'

Я следую sitepoint's An introduction to Gulp.js, но я застрял на четвертом этапе, когда я пытаюсь запустить gulp jshint я получаю «Error: Cannot find module 'jshint/src/cli'»

Я понятия не имею, что это вызывает, поэтому я прошу Вот. Ниже приведены несколько скриншотов, которые помогут решить эту проблему.

Terminal error when running gulp jshint

Folder structer for gulp project

Как всегда, я бесконечно благодарен за любые советы.

+1

Установлен ли jshint? – MinusFour

+0

Да, это так. Я даже переустановил его, чтобы убедиться, и я все еще получаю ту же ошибку. – lateralaus

+4

Как вы его установили?Необходимо установить следующее: 'npm установить jshint gulp-jshint --save-dev' из корня вашего узла. – MinusFour

ответ

268

Вам также необходимо установить jshint, чтобы устранить проблему.

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

Вот оно! Большое спасибо! – Psi

+0

Разве это не то, что это делает? 'npm install gulp-jshint --save-dev' – lateralaus

+2

Я просто столкнулся с той же проблемой. Я думаю, что разработчики внесли изменения в структуру gulp-jshint в последней версии, которая вызвала эту проблему (если вы видите https://github.com/spalger/gulp-jshint/issues/131). Я заметил предупреждение о равноправной связи, когда я установил 'gulp-jshint'. – CSharp

24

Оказывается, мне нужно использовать npm install --save-dev jshint gulp-jshint вместо npm install gulp-jshint --save-dev, как указано в учебнике. Дискуссия вокруг этого была найдена в https://github.com/spalger/gulp-jshint/issues/131 с огромной благодарностью @ user3042437 за предоставление ссылки.

+0

Я использовал тот же учебник и застрял на том же месте. Спасибо за сообщение ответа! Сейчас работает отлично. –

-1

Иногда порядок фразировки имеет значение. Я узнал, что это npm install --save-dev jshint gulp-jshint не работает, но это работает npm install jshint gulp-jshint --save

-1

Здесь вы предназначаться jshint, который вы, вероятно, не были установлены. (. Вы можете сделать это в gulp.task('jshint', function() {)

Попробуйте это:

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

Это соответствует тем, как вы require d это.

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

Если вы все еще получаете ошибку после того, как вы положили в правильном синтаксисе выше, (НПМ установить --save-DEV jshint проглатывать-jshint), который работает.

Перед тем, как запустите установку, зайдите в файл package.json и удалите строки для jshint и gulp-jshint перед запуском установки, убедитесь, что вы отредактируете файл package.json, чтобы удалить строки, которые вызывают jshint и gulp-jshint, в противном случае ошибка будет сохраняться.

Смежные вопросы