Error: Cannot find module ‘webpack’
好久没用webpack压缩js文件了,今天用到了一下,但是…
E:\xxxxx>webpack js.js js.min.js -p
C:\Users\admin\node_modules\webpack-cli\bin\cli.js:244
throw err;
^
Error: Cannot find module 'webpack'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:580:15)
at Function.Module._load (internal/modules/cjs/loader.js:506:25)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (C:\Users\admin\node_modules\v8-compile-cache\v8-compile-cache.js:159:20)
at Object.<anonymous> (C:\Users\admin\node_modules\webpack-cli\bin\convert-argv.js:7:24)
at Module._compile (C:\Users\admin\node_modules\v8-compile-cache\v8-compile-cache.js:178:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at yargs.parse (C:\Users\admin\node_modules\webpack-cli\bin\cli.js:241:14)
at Object.parse (C:\Users\admin\node_modules\yargs\yargs.js:567:18)
at C:\Users\admin\node_modules\webpack-cli\bin\cli.js:219:8
at Object.<anonymous> (C:\Users\admin\node_modules\webpack-cli\bin\cli.js:538:3)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Module.require (internal/modules/cjs/loader.js:636:17)
at require (internal/modules/cjs/helpers.js:20:18)
at Object.<anonymous> (C:\Users\admin\AppData\Roaming\npm\node_modules\webpack\bin\webpack.js:155:2)
at Module._compile (internal/modules/cjs/loader.js:688:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:10)
at Module.load (internal/modules/cjs/loader.js:598:32)
at tryModuleLoad (internal/modules/cjs/loader.js:537:12)
at Function.Module._load (internal/modules/cjs/loader.js:529:3)
at Function.Module.runMain (internal/modules/cjs/loader.js:741:12)
一开始以为,时间长不用,版本不支持啥的,于是重新安装了一遍
npm install webpack -g
但是还是报错,于是查了一下
确实是版本的问题,
因为在webpack 3中,webpack本身和它的CLI以前都是在同一个包中,但在第4版中,他们已经将两者分开来更好地管理它们。
执行cli安装
npm install webpack-cli -g
后面再执行压缩,
webpack js.js js.min.js -p
但是又遇到了了一个问题
ERROR in multi ./js.js js.min.js
Module not found: Error: Can't resolve 'js.min.js' in 'E:\Code\web\songshuila\wp-content\themes\water2\scripts'
@ multi ./js.js js.min.js main[1]
output
,后来测试发现
原来,需要区分开,新版本,他默认 是多个文件压缩
webpack js.js js.min.js -p
这样他会视为两个文件了,js.min.js
没有找到所以报错
需要这样,通过output
指定输出
webpack js.js --output js.min.js -p
或者不指定,按照默认的形式
webpack js.js -p
这样他会生成一个dist
文件夹里面会生成个mian.js
文件
然后我执行了一次webpack js.js js.min.js -p
,然后没有报错了,因为两个文件都存在
一开始翻译的时候,不能理解
经过测试之后,最后又翻译了一下,了解了