node.js - cli - Webpack-webpack-dev-server: comando no encontrado
webpack-dev-server npm (9)
Para su información, para acceder a cualquier script a través de la línea de comandos como lo estaba intentando, debe tener el script registrado como un script de shell (o cualquier tipo de script como .js, .rb) en el sistema, como estos archivos en el directorio
/usr/bin
en UNIX. Y, el sistema debe saber dónde encontrarlos. es decir, la ubicación debe cargarse en la matriz$PATH
.
En su caso, el script
webpack-dev-server
ya está instalado en algún lugar dentro del directorio
./node_modules
, pero el sistema no sabe cómo acceder a él.
Por lo tanto, para acceder al comando
webpack-dev-server
, también necesita instalar el script en
el ámbito global
.
$ npm install webpack-dev-server -g
Aquí,
-g
refiere al alcance global.
Sin embargo, esta no es una forma recomendada porque puede enfrentar problemas conflictivos con la versión;
entonces, en su lugar, puede establecer un comando en el archivo
package.json
npm
como:
"scripts": {
"start": "webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors"
}
Esta configuración le permitirá acceder al script que desee con un comando simple
$ npm start
Tan corto para memorizar y jugar.
Y,
npm
conoce la ubicación del módulo
webpack-dev-server
.
Estoy trabajando en una aplicación web React usando webpack, sin apretar este tutorial .
Accidentalmente, agregué la carpeta node_modules a mi git.
Luego lo
git rm -f node_modules/*
nuevamente usando
git rm -f node_modules/*
.
Ahora, cuando intento iniciar el servidor webpack, aparece el siguiente error:
> webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors
sh: webpack-dev-server: command not found
npm ERR! Darwin 14.4.0
npm ERR! argv "node" "/usr/local/bin/npm" "run" "devserve"
npm ERR! node v0.12.4
npm ERR! npm v2.10.1
npm ERR! file sh
npm ERR! code ELIFECYCLE
npm ERR! errno ENOENT
npm ERR! syscall spawn
npm ERR! [email protected] devserve: `webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors`
npm ERR! spawn ENOENT
Al principio pensé que era solo mi proyecto, pero luego revisé los puntos de verificación del código del tutorial: ¡el mismo error! Entonces, algo parece estar en mal estado a nivel mundial.
Esto es lo que probé hasta ahora:
-
rm node_modules
y reinstalar connpm install
-
npm cache clean
como alguien mencionó con respecto a este problema en github -
instale webpack globalmente con
npm install -g webpack
- eliminar completamente el nodo y npm de mi sistema (usando esta guía ) y reinstalar usando brew
El mensaje de error aún persiste. ¿Qué más puedo probar?
PD: El contenido de
webpack.dev.config.js
es:
var config = require(''./webpack.config.js'');
var webpack = require(''webpack'');
config.plugins.push(
new webpack.DefinePlugin({
"process.env": {
"NODE_ENV": JSON.stringify("development")
}
})
);
module.exports = config;
De acuerdo, fue fácil:
npm install webpack-dev-server -g
Lo que me confundió fue que no necesitaba eso al principio, probablemente las cosas cambiaron con una nueva versión.
El script
webpack-dev-server
ya está instalado dentro del directorio ./node_modules.
Puede instalarlo nuevamente globalmente si
sudo npm install -g webpack-dev-server
o ejecutarlo así
./node_modules/webpack-dev-server/bin/webpack-dev-server.js -d --config webpack.dev.config.js --content-base public/ --progress --colors
.
significa buscarlo en el directorio actual.
Encontré que la respuesta aceptada no funciona en todos los escenarios.
Para garantizar que funcione al 100%, TAMBIÉN debe borrar el caché npm.
Puede pasar directamente al caché y borrar bloqueos, cachés, anonymous-cli-metrics.json;
o uno puede probar
npm cache clean
.
Dado que el autor había borrado la memoria caché antes de probar la solución recomendada, es posible que no haya sido parte de los requisitos previos.
Lo instalo con
npm install --save-dev webpack-dev-server
luego configuro package.json y webpack.config.js de esta manera:
setting
.
Luego ejecuto webpack-dev-server y obtengo este error de error .
Si no utilizo
npm install -g webpack-dev-server
para instalar, ¿cómo solucionarlo?
Arregle la
configuration has an unknown property ''colors''
error que
configuration has an unknown property ''colors''
eliminando
colors:true
.
¡Funcionó!
Tuve el mismo problema, pero los pasos a continuación me ayudaron a salir de él.
-
Instalar el ''webpack-dev-server'' localmente (en el directorio del proyecto ya que no estaba seleccionando de la instalación global)
npm install --save webpack-dev-server
Puede verificar si la carpeta ''webpack-dev-server'' existe dentro de node_modules.
- Ejecutar usando npx para ejecutar directamente
npx webpack-dev-server --mode development --config ./webpack.dev.js
npm run start
también funciona bien donde su entrada en los scripts package.json debe ser como la anterior como sin npx.
Tuve un problema similar con
Yarn
, ninguno de los anteriores funcionó para mí, así que simplemente
./node_modules
y
./node_modules
yarn install
y el problema desapareció.
para problemas con
Cómo ejecutar webpack localmente en lugar de la opción global habitual
echa un vistazo a
https://.com/a/51165867/10003436
Hilo
Tuve el problema al correr:
yarn start
Se solucionó con la ejecución primero:
yarn install