Webpack执行-v返回版本号与package.json、官方版本不符是什么原因?
版本号不匹配原因
- 你运行的
npm run webpack -v返回的实际是npm本身的版本,不是webpack的版本。npm会优先解析自身命令后的参数,-v会被识别为npm的版本查询参数,单独执行npm -v得到的结果就是6.14.4,和你拿到的返回值完全一致。 - 如果你要查询项目本地安装的webpack版本,需要在命令中添加参数分隔符
--,正确写法为npm run webpack -- -v。--的作用是告知npm,后续所有参数都直接传递给要执行的webpack脚本,不再做npm侧的参数解析。 - 补充说明:package.json中声明的
^4.42.1是项目本地依赖的webpack版本,只有通过npm run、npx调用webpack时才会优先使用该版本;如果直接在终端执行webpack -v,返回的是全局安装的webpack版本(如果存在全局安装的话)。
内容的提问来源于stack exchange,提问作者howard
相关产品推荐
相关产品推荐

