Error de trago: no se puede encontrar el módulo 'jshint / src / cli'

117

Así que tengo una nueva instalación de El Capitán y les estoy dando a estos corredores de tareas otra oportunidad.

Estoy siguiendo la introducción a Gulp.js de sitepoint , pero estoy atascado en el paso cuatro, cuando intento ejecutar aparecegulp jshint " Error: Cannot find module 'jshint/src/cli'"

No tengo idea de qué está causando esto, por eso pregunto aquí. A continuación se muestran un par de capturas de pantalla para ayudar con el problema.

Error de terminal al ejecutar gulp jshint

Estructor de carpetas para proyecto gulp

Como siempre, estaré eternamente agradecido por cualquier consejo.

lateralaus
fuente
1
¿Está jshint instalado?
MinusFour
Sí lo es. Incluso lo reinstalé para estar seguro y sigo recibiendo el mismo error.
lateralaus
6
¿Cómo lo instalaste? Debe instalarse así: npm install jshint gulp-jshint --save-devdesde la raíz de su aplicación de nodo.
MinusFour
1
@lateralaus, ¿tú también lo hiciste npm install jshint?
Flobin
1
Yo solía ¿ npm install gulp-jshint --save-deves tan diferente a npm install jshint?
lateralaus

Respuestas:

327

También debe instalar jshint , eso solucionará el problema.

> npm install --save-dev jshint gulp-jshint
fmatar
fuente
1
Eso es ! ¡Muchas gracias!
Psi
¿No es eso lo que hace esto? npm install gulp-jshint --save-dev
lateralaus
2
Me encontré con el mismo problema. Creo que los desarrolladores hicieron un cambio en la estructura de gulp-jshint en la última versión que ha causado este problema (si ve github.com/spalger/gulp-jshint/issues/131 ). Noté una advertencia de dependencia de pares cuando instalé gulp-jshint.
CSharp
8
@ user3042437 ¡Salud! Eso hizo el trabajo: D Entonces resulta que necesito usar en npm install --save-dev jshint gulp-jshintlugar de lo npm install gulp-jshint --save-devque indica el tutorial.
lateralaus
@lateralaus Si todavía estás cerca, debes aceptar esta respuesta :) marca de verificación a la izquierda
Tim Malone
28

Resulta que necesito usar en npm install --save-dev jshint gulp-jshintlugar de lo npm install gulp-jshint --save-devque indica el tutorial. La discusión sobre esto se encontró en https://github.com/spalger/gulp-jshint/issues/131 con un agradecimiento masivo a @ user3042437 por proporcionar el enlace.

lateralaus
fuente
Estaba usando el mismo tutorial y me quedé atascado en el mismo lugar. ¡Gracias por publicar la respuesta! Funciona bien ahora.
Orlando Morales-Cochran
0

Si aún recibe el error después de ingresar la sintaxis correcta arriba, (npm install --save-dev jshint gulp-jshint), que funciona.

Antes de ejecutar la instalación nuevamente, vaya a su archivo package.json y elimine las líneas para jshint y gulp-jshint antes de ejecutar la instalación, asegúrese de editar su package.json para eliminar las líneas que llaman a jshint y gulp-jshint, de lo contrario, el error persistirá.

Ben Erwin
fuente
-1

A veces, el orden de la redacción es importante. Descubrí que esto npm install --save-dev jshint gulp-jshintno funciona pero esto npm install jshint gulp-jshint --savefunciona

Cengkuru Michael
fuente
-1

Aquí apunta jshint, que probablemente no instaló. (Haces esto en gulp.task('jshint', function() {.)

Prueba esto:

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

Esto coincide con la forma en que requirelo hiciste .

var jshint = require('gulp-jshint');
onyxglock
fuente
-2

Existe una solución temporal para evitar este error. Incluso esta solución temporal también funcionará correctamente, en caso de que no desee utilizar el archivo jshint.js en su aplicación en cualquier lugar.

  1. Vaya a su archivo gulpfile.js.
  2. Comente el código en la línea número 4.

    var jshint = require('gulp-jshint');
  3. Ahora, ejecute el comando gulp en su terminal. Tu servidor estará activo.

Pushp Singh
fuente
Esta respuesta no soluciona el problema de raíz, que creo que debería ser el foco de una respuesta en SO.
simeg