想要直接在命令行用webpack的命令,就开始全局安装webpack。没想到捅了猴子窝(无奈),错误一个接一个……
1.全局环境中安装webpack,命令为:npm install -g webpack
2. 提示没有安装webpack-cli
One CLI for webpack must be installed. These are recommended choices, delivered as separate packages:
- webpack-cli (https://github.com/webpack/webpack-cli)
The original webpack full-featured CLI.
We will use "npm" to install the CLI via "npm install -D".
Do you want to install 'webpack-cli' (yes/no):
输入yes后报错
{ Error: Cannot find module 'webpack-cli'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:636:15)
at Function.Module._load (internal/modules/cjs/loader.js:562:25)
at Module.require (internal/modules/cjs/loader.js:690:17)
at require (internal/modules/cjs/helpers.js:25:18)
at runCommand.then (D:\Asoftware\node_global\node_modules\webpack\bin\webpack.js:143:5)
at process._tickCallback (internal/process/next_tick.js:68:7) code: 'MODULE_NOT_FOUND' }
3. 解决这个坑,输入命令npm install webpack-cli -g,全局安装一下webpack-cli
4.再次运行webpack命令打包,出现新错误
D:\inspur\vue-build>webpack
D:\inspur\vue-build\node_modules\webpack-cli\bin\cli.js:137
const statsPresetToOptions = require("webpack").Stats.presetToOptions;
^
TypeError: Cannot read property 'presetToOptions' of undefined
at processOptions (D:\inspur\vue-build\node_modules\webpack-cli\bin\cli.js:137:57)
at yargs.parse (D:\inspur\vue-build\node_modules\webpack-cli\bin\cli.js:364:3)
at Object.parse (D:\inspur\vue-build\node_modules\webpack-cli\node_modules\yargs\yargs.js:567:18)
at D:\inspur\vue-build\node_modules\webpack-cli\bin\cli.js:49:8
at Object.<anonymous> (D:\inspur\vue-build\node_modules\webpack-cli\bin\cli.js:366:3)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:690:17)
at require (internal/modules/cjs/helpers.js:25:18)
at module.exports.filename (D:\Asoftware\node_global\node_modules\webpack-cli\node_modules\import-local\index.js:16:66)
at D:\Asoftware\node_global\node_modules\webpack-cli\bin\cli.js:15:6
at Object.<anonymous> (D:\Asoftware\node_global\node_modules\webpack-cli\bin\cli.js:366:3)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Module.require (internal/modules/cjs/loader.js:690:17)
at require (internal/modules/cjs/helpers.js:25:18)
at Object.<anonymous> (D:\Asoftware\node_global\node_modules\webpack\bin\webpack.js:156:2)
at Module._compile (internal/modules/cjs/loader.js:776:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:787:10)
at Module.load (internal/modules/cjs/loader.js:653:32)
at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
at Function.Module._load (internal/modules/cjs/loader.js:585:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:829:12)
at startup (internal/bootstrap/node.js:283:19)
出了错误其实也不用一味的百度,错误提示信息很详细,要练就自己决绝问题的能力。
根据自己的提示路径,打开D:\Asoftware\node_global\node_modules\webpack-cli\bin*cli.js*,第137行,把const statsPresetToOptions = require(“webpack”).Stats.presetToOptions;中间Stats下标的这个.删掉。
保存后再次运行webpack就成功了!