今天项目安装依赖时,报了个错:
Error: Can't find Python executable "python", you can set the PYTHON env variable.
百度了下大概是缺失python的环境,需要安装python或者执行下面两条命令:
npm install --global --production windows-build-tools
npm install --global node-gyp
不想安装python,所以选了第二种方法
但是执行第一条命令时,又报错了,百度了下概是需要把npm的proxy和https-proxy设置为null
但我看了下我电脑,本来就是null......,所以此路不通
回想了下之前安装依赖,报过node-sass安装失败的问题,那是不是还是他的事儿呢,于是按照这个方法重新操作了一次,再执行npm install
,他就成功了......
方法如下:
用这行命令
node -p "[process.platform, process.arch, process.versions.modules].join('-')"
复制输出的结果,去Release 列表找到对应的版本,Ctrl+F 粘贴,找到那个文件,下载(必要的时候挂代理,浏览器下载通常都比 node 下载更快更稳定),然后文件存到一个稳定的路径,并复制路径
设置sass路径
set SASS_BINARY_PATH=D:/nodejs/.nodes/win32-x64-57_binding.node
然后安装node-sass模块
npm i node-sass -D --verbose
之后重新install就可以了
有点难受,记录一下
再一次遇到这个问题,用上面的方法没有解决,通过安装python解决的。哭辽
两天之前安装成功之后,启动也没有问题
但是过了两天,我重新启动时又报错了......
不知道原因,但看问题还是跟之前差不多,又重复一次上面的流程,就好了
不知道原因,记录一下......
再
以上,用命令行启动可以成功启动,在webstorm中用集成的npm命令启动报错:
error in ./src/assets/styles/element-variables.scss
Module build failed (from ./node_modules/sass-loader/dist/cjs.js):
Error: ENOENT: no such file or directory, scandir 'C:\Users\itw_wanglei07\Desktop\osms\osms_web\osms-ui\node_modules\node-sass\vendor'
解决方法如下:
到C:\Users\itw_wanglei07\Desktop\osms\osms_web\osms-ui\node_modules\node-sass
目录下,自己建一个vendor文件夹,然后在vendor下用node -p "[process.platform, process.arch, process.versions.modules].join('-')"
查到的版本号建一个文件夹,最后把之前下载的win32-x64-72_binding.node文件名改为binding.node放入新建的文件夹下,再重新启动就可以了
如:我查看我的版本是win32-x64-72
最后操作完之后的文件路径为C:\Users\itw_wanglei07\Desktop\osms\osms_web\osms-ui\node_modules\node-sass\vendor\win32-x64-72\binding.node
20220510,发现一个新的报错和解决方案
报错信息如下:
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] postinstall: `node scripts/build.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] postinstall script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
找不到sass,查看node-sass文件,里面没有文件。
所以在npm install前设置sass源:
npm config set sass_binary_site=https://npm.taobao.org/mirrors/node-sass
然后重新安装依赖就可以了
安装依赖速度慢时,可以使用淘宝npm源
永久设置:
npm config set registry http://registry.npm.taobao.org/
一次使用:
npm install --registry=https://registry.npm.taobao.org