此文章為原創(chuàng)文章,如轉(zhuǎn)載請(qǐng)標(biāo)明原作鏈接。
https://blog.csdn.net/qq_34718871/article/details/128731097
本作品采用 知識(shí)共享署名-相同方式共享 4.0 國(guó)際許可協(xié)議 (CC BY-SA 4.0) 進(jìn)行許可。
0x01 起因
當(dāng)我嘗試使用如下命令設(shè)置 node-gyp 環(huán)境時(shí),
npm config set -g msvs_version 2022
發(fā)生了報(bào)錯(cuò),主要部分如下:
npm ERR! `msvs_version` is not a valid npm option
在設(shè)置 python 時(shí)也遇到了同樣的問(wèn)題:
npm ERR! `python` is not a valid npm option
我嘗試列出了 npm 支持設(shè)置的所有配置,其中絲毫不見(jiàn) msvs_version 和 python 的蹤影。繼續(xù)翻遍了 node-gyp 的 Issues,沒(méi)有發(fā)現(xiàn)類似的問(wèn)題。又去 npm 那邊找了一會(huì),還是沒(méi)有線索。
0x02 導(dǎo)致原因 & 解決方法
直到我注意到了 Stack OverFlow 的一個(gè)回答[1],答主建議將 npm 版本降至 v8。這馬上提醒了我,因?yàn)槲沂褂玫?npm 是 v9。
我嘗試進(jìn)行了降級(jí)操作:
npm install -g npm@^8
檢查 npm 版本:
npm --version
確認(rèn)降級(jí)成功!
隨后重新嘗試配置 node-gyp:
npm config set -g msvs_version 2022
npm config set -g python "C:\Program Files\Python\Python310\python.exe"
沒(méi)有產(chǎn)生任何報(bào)錯(cuò),配置成功辣!