Webpack - webpack-dev-server:找不到命令
Webpack - webpack-dev-server: command not found
我正在使用 webpack 开发一个 React webapp,松散地与 this tutorial。
不小心,我将 node_modules 文件夹添加到我的 git。然后我使用 git rm -f node_modules/*
.
再次删除它
现在,当我尝试启动 webpack 服务器时,出现以下错误:
> 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! Blabber@0.0.1 devserve: `webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors`
npm ERR! spawn ENOENT
一开始以为只是我的项目,后来查看教程的代码检查点:同样的错误!所以全球范围内似乎有些事情搞砸了。
这是我到目前为止尝试过的:
rm node_modules
并使用 npm install
重新安装
npm cache clean
正如有人提到的 this issue on github
- 使用
npm install -g webpack
全局安装 webpack
- 从我的系统中完全删除节点和 npm(使用 this guide)并使用 brew
重新安装
错误信息仍然存在。我还能尝试什么?
PS:webpack.dev.config.js
的内容为:
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;
好的,很简单:
npm install webpack-dev-server -g
让我感到困惑的是,一开始我不需要它,可能随着新版本的出现,情况发生了变化。
仅供参考,要像您尝试的那样通过命令行访问任何脚本,您
需要将脚本注册为 shell-脚本 ( 或任何类型的
系统中的 .js、.rb) 之类的脚本就像目录中的这些文件一样
/usr/bin
在 UNIX 中。而且,系统必须知道在哪里可以找到它们。 IE。
该位置必须加载到 $PATH
数组中。
在您的情况下,脚本 webpack-dev-server
已经安装在 ./node_modules
目录中的某处,但系统不知道如何访问它。因此,要访问命令 webpack-dev-server
,您还需要在 全局范围 中安装脚本。
$ npm install webpack-dev-server -g
这里-g
指的是全局作用域
但是,不推荐这样做,因为您可能会遇到版本冲突的问题;因此,您可以在 npm
的 package.json
文件中设置命令,例如:
"scripts": {
"start": "webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors"
}
此设置将允许您使用简单的命令访问您想要的脚本
$ npm start
或
$ yarn start
记忆和演奏的时间太短了。并且,npm
知道模块 webpack-dev-server
.
的位置
我安装 npm install --save-dev webpack-dev-server
然后我设置 package.json 和 webpack.config.js 像这样:
setting.
然后我 运行 webpack-dev-server 得到这个错误
error.
如果我不使用npm install -g webpack-dev-server
安装,那么如何修复呢?
我通过删除 colors:true
修复了错误 configuration has an unknown property 'colors'
。成功了!
脚本 webpack-dev-server
已经安装在 ./node_modules 目录中。
您可以通过
重新全局安装它
sudo npm install -g webpack-dev-server
或运行像这样
./node_modules/webpack-dev-server/bin/webpack-dev-server.js -d --config webpack.dev.config.js --content-base public/ --progress --colors
.
表示在当前目录下查找。
我发现接受的答案并不适用于所有情况。为确保它 100% 正常工作,还必须清除 npm 缓存。要么直接转到缓存并清除锁,缓存,anonymous-cli-metrics.json;或者可以尝试 npm cache clean
.
由于作者在尝试推荐的解决方案之前清除了缓存,因此可能无法使其成为先决条件的一部分。
纱线
我在 运行 时遇到问题:yarn start
首先用 运行 修复:yarn install
我在使用 Yarn 时遇到了类似的问题,上面的 none 对我有用,所以我简单地删除了 ./node_modules
和 运行 yarn install
问题消失了。
我遇到了同样的问题,但以下步骤帮助我解决了这个问题。
在本地安装 'webpack-dev-server'(在项目目录中,因为它不是从全局安装中挑选的)
npm install --save webpack-dev-server
可以验证'webpack-dev-server'文件夹是否存在于node_modules内。
- 运行 直接对 运行 使用 npx
npx webpack-dev-server --mode development --config ./webpack.dev.js
npm run start
也可以正常工作,您在 package.json 脚本中的输入应该像上面一样没有 npx。
npm install webpack-dev-server -g -- windows OS
最好在 linux 中使用 sudo 以避免权限错误
sudo npm install webpack-dev-server -g
您可以使用 sudo npm install webpack-dev-server --save 将其添加到 package.json。
有时您可能需要运行以下命令。
npm install webpack-cli --save 或 npm install webpack-cli -g
对于全局安装:
npm 安装 webpack-dev-server -g
对于本地安装
npm install --save-dev webpack
当您在 package.json 文件中引用 webpack 时,它会尝试在 node_modules\.bin\
位置查找它
本地安装后,文件 wbpack 将在以下位置创建:
\node_modules\.bin\webpack
我在安装 VSCode 并添加远程 Git 存储库后发现了同样的问题。 /node_modules/.bin
文件夹以某种方式被删除,命令行中的 运行 npm install --save webpack-dev-server
重新安装了丢失的文件夹并解决了我的问题。
我正在使用 webpack 开发一个 React webapp,松散地与 this tutorial。
不小心,我将 node_modules 文件夹添加到我的 git。然后我使用 git rm -f node_modules/*
.
现在,当我尝试启动 webpack 服务器时,出现以下错误:
> 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! Blabber@0.0.1 devserve: `webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors`
npm ERR! spawn ENOENT
一开始以为只是我的项目,后来查看教程的代码检查点:同样的错误!所以全球范围内似乎有些事情搞砸了。
这是我到目前为止尝试过的:
rm node_modules
并使用npm install
重新安装
npm cache clean
正如有人提到的 this issue on github- 使用
npm install -g webpack
全局安装 webpack
- 从我的系统中完全删除节点和 npm(使用 this guide)并使用 brew 重新安装
错误信息仍然存在。我还能尝试什么?
PS:webpack.dev.config.js
的内容为:
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;
好的,很简单:
npm install webpack-dev-server -g
让我感到困惑的是,一开始我不需要它,可能随着新版本的出现,情况发生了变化。
仅供参考,要像您尝试的那样通过命令行访问任何脚本,您
需要将脚本注册为 shell-脚本 ( 或任何类型的
系统中的 .js、.rb) 之类的脚本就像目录中的这些文件一样
/usr/bin
在 UNIX 中。而且,系统必须知道在哪里可以找到它们。 IE。
该位置必须加载到 $PATH
数组中。
在您的情况下,脚本 webpack-dev-server
已经安装在 ./node_modules
目录中的某处,但系统不知道如何访问它。因此,要访问命令 webpack-dev-server
,您还需要在 全局范围 中安装脚本。
$ npm install webpack-dev-server -g
这里-g
指的是全局作用域
但是,不推荐这样做,因为您可能会遇到版本冲突的问题;因此,您可以在 npm
的 package.json
文件中设置命令,例如:
"scripts": {
"start": "webpack-dev-server -d --config webpack.dev.config.js --content-base public/ --progress --colors"
}
此设置将允许您使用简单的命令访问您想要的脚本
$ npm start
或
$ yarn start
记忆和演奏的时间太短了。并且,npm
知道模块 webpack-dev-server
.
我安装 npm install --save-dev webpack-dev-server
然后我设置 package.json 和 webpack.config.js 像这样:
setting.
然后我 运行 webpack-dev-server 得到这个错误 error.
如果我不使用npm install -g webpack-dev-server
安装,那么如何修复呢?
我通过删除 colors:true
修复了错误 configuration has an unknown property 'colors'
。成功了!
脚本 webpack-dev-server
已经安装在 ./node_modules 目录中。
您可以通过
sudo npm install -g webpack-dev-server
或运行像这样
./node_modules/webpack-dev-server/bin/webpack-dev-server.js -d --config webpack.dev.config.js --content-base public/ --progress --colors
.
表示在当前目录下查找。
我发现接受的答案并不适用于所有情况。为确保它 100% 正常工作,还必须清除 npm 缓存。要么直接转到缓存并清除锁,缓存,anonymous-cli-metrics.json;或者可以尝试 npm cache clean
.
由于作者在尝试推荐的解决方案之前清除了缓存,因此可能无法使其成为先决条件的一部分。
纱线
我在 运行 时遇到问题:yarn start
首先用 运行 修复:yarn install
我在使用 Yarn 时遇到了类似的问题,上面的 none 对我有用,所以我简单地删除了 ./node_modules
和 运行 yarn install
问题消失了。
我遇到了同样的问题,但以下步骤帮助我解决了这个问题。
在本地安装 'webpack-dev-server'(在项目目录中,因为它不是从全局安装中挑选的)
npm install --save webpack-dev-server
可以验证'webpack-dev-server'文件夹是否存在于node_modules内。
- 运行 直接对 运行 使用 npx
npx webpack-dev-server --mode development --config ./webpack.dev.js
npm run start
也可以正常工作,您在 package.json 脚本中的输入应该像上面一样没有 npx。
npm install webpack-dev-server -g -- windows OS
最好在 linux 中使用 sudo 以避免权限错误
sudo npm install webpack-dev-server -g
您可以使用 sudo npm install webpack-dev-server --save 将其添加到 package.json。
有时您可能需要运行以下命令。
npm install webpack-cli --save 或 npm install webpack-cli -g
对于全局安装: npm 安装 webpack-dev-server -g
对于本地安装 npm install --save-dev webpack
当您在 package.json 文件中引用 webpack 时,它会尝试在 node_modules\.bin\
位置查找它本地安装后,文件 wbpack 将在以下位置创建: \node_modules\.bin\webpack
我在安装 VSCode 并添加远程 Git 存储库后发现了同样的问题。 /node_modules/.bin
文件夹以某种方式被删除,命令行中的 运行 npm install --save webpack-dev-server
重新安装了丢失的文件夹并解决了我的问题。