Node.js 配置 node-gyp 时报错 msvs_version is not a valid npm option 的解决方案
- 0x01 起因
- 0x02 导致原因 & 解决方法
此文章为原创文章,如转载请标明原作链接。
https://blog.csdn.net/qq_34718871/article/details/128731097
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 (CC BY-SA 4.0) 进行许可。
0x01 起因
当我尝试使用如下命令设置 node-gyp 环境时,
npm config set -g msvs_version 2022
发生了报错,主要部分如下:
npm ERR! `msvs_version` is not a valid npm option
在设置 python
时也遇到了同样的问题:
npm ERR! `python` is not a valid npm option
我尝试列出了 npm 支持设置的所有配置,其中丝毫不见 msvs_version
和 python
的踪影。继续翻遍了 node-gyp 的 Issues,没有发现类似的问题。又去 npm 那边找了一会,还是没有线索。
0x02 导致原因 & 解决方法
直到我注意到了 Stack OverFlow 的一个回答1,答主建议将 npm 版本降至 v8。这马上提醒了我,因为我使用的 npm 是 v9。
我尝试进行了降级操作:
npm install -g npm@^8
检查 npm 版本:
npm --version
确认降级成功!
随后重新尝试配置 node-gyp:
npm config set -g msvs_version 2022
npm config set -g python "C:Program FilesPythonPython310python.exe"
没有产生任何报错,配置成功辣!
-
https://stackoverflow.com/questions/74522956 ↩︎