整理 node-sass 安装失败的原因及解决办法(小结)
npminstall时偶尔遇到报错:没有安装python或node-sass安装失败的问题,百度之后发现是被墙了,但根据百度的方法换了淘宝镜像和用了vpn都安装失败,最后发现原来是因为没有卸载之前安装失败的包导致的。作者本人最后的解决方案是npmuninstallnode-sass,然后使用VPN重新安装了一遍就成功了。不能翻墙的同学请看下文
node-sass安装失败的原因
npm安装node-sass依赖时,会从github.com上下载.node文件。由于国内网络环境的问题,这个下载时间可能会很长,甚至导致超时失败。
这是使用sass的同学可能都会遇到的郁闷的问题。
解决方案就是使用其他源,或者使用工具下载,然后将安装源指定到本地。
解决方法一:使用淘宝镜像源(推荐)
设置变量sass_binary_site,指向淘宝镜像地址。示例:
npminode-sass--sass_binary_site=https://npm.taobao.org/mirrors/node-sass/ //也可以设置系统环境变量的方式。示例 //linux、mac下 SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/npminstallnode-sass //window下 setSASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/&&npminstallnode-sass
或者设置全局镜像源:
npmconfigsetsass_binary_sitehttps://npm.taobao.org/mirrors/node-sass/
之后再涉及到node-sass的安装时就会从淘宝镜像下载。
解决方法二:使用cnpm
使用cnpm安装node-sass会默认从淘宝镜像源下载,也是一个办法:
cnpminstallnode-sass
解决方法三:创建.npmrc文件
在项目根目录创建.npmrc文件,复制下面代码到该文件。
phantomjs_cdnurl=http://cnpmjs.org/downloads sass_binary_site=https://npm.taobao.org/mirrors/node-sass/ registry=https://registry.npm.taobao.org
保存后删除之前安装失败的包(第一次安装请跳过此步)
npmuninstallnode-sass
重新安装
npminstallnode-sass
作者后来另一个项目在没有使用VPN的情况下测试此方法,安装时报错ERR!node-sass@3.8.0postinstall:`nodescripts/build.js改用方法一成功。
解决方法四:下载.node到本地
到这里去根据版本号、系统环境,选择下载.node文件,然后安装时,指定变量sass_binary_path,如:
npminode-sass--sass_binary_path=/Users/lzwme/Downloads/darwin-x64-48_binding.node
安装失败后重新安装问题
之前安装失败,再安装就不去下载了,怎么办呢?那就先卸载再安装:
npmuninstallnode-sass npminode-sass--sass_binary_site=https://npm.taobao.org/mirrors/node-sass/
相关错误提示
提示没有安装python、build失败等,如:
gypERR!configureerror gypERR!stackError:Can'tfindPythonexecutable"C:\Users\zhuon\AppData\Local\Programs\Python\Python36\python.EXE",youcansetthePYTHONenvvariable. gypERR!stackatPythonFinder.failNoPython(G:\Workspace\ManYan\manyan-nav\node_modules\node-gyp\lib\configure.js:483:19) gypERR!stackatPythonFinder.(G:\Workspace\ManYan\manyan-nav\node_modules\node-gyp\lib\configure.js:508:16) gypERR!stackatG:\Workspace\ManYan\manyan-nav\node_modules\graceful-fs\polyfills.js:284:29 gypERR!stackatFSReqWrap.oncomplete(fs.js:152:21) gypERR!SystemWindows_NT10.0.15063 gypERR!command"C:\\dev\\nodejs\\node.exe""G:\\Workspace\\ManYan\\manyan-nav\\node_modules\\node-gyp\\bin\\node-gyp.js""rebuild""--verbose""--libsass_ext=""--libsass_cflags=""--libsass_ldflags=" "--libsass_library=" gypERR!cwdG:\Workspace\ManYan\manyan-nav\node_modules\node-sass gypERR!node-vv8.4.0 gypERR!node-gyp-vv3.6.2 gypERR!notok Buildfailed npmWARNco-mocha@1.2.0requiresapeerofmocha@>=1.18<4butnonewasinstalled. npmWARNegg-restapi-module-tool@1.0.0Norepositoryfield. npmWARNegg-restapi-module-tool@1.0.0scripts['server']shouldprobablybescripts['start']. npmERR!codeELIFECYCLE npmERR!errno1 npmERR!node-sass@3.8.0postinstall:`nodescripts/build.js` npmERR!Exitstatus1 npmERR! npmERR!Failedatthenode-sass@3.8.0postinstallscript. npmERR!Thisisprobablynotaproblemwithnpm.Thereislikelyadditionalloggingoutputabove. npmERR!Acompletelogofthisruncanbefoundin: npmERR!D:\nodejs\cache\_logs\2017-09-02T16_06_24_298Z-debug.log
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。