转自:https://segmentfault.com/a/1190000005921721

 

 

======== 7月12日更新 ========

总的来说就是两种方法解决:

SASS_BINARY_SITE=https://npm.taobao.org/mirrors/node-sass/ npm install

或者在 ~/.npmrc 里添加下面这行(参考),保存后再 npm install
(如果是用的 cnpm,需要添加到 ~/.cnpmrc)

sass_binary_site=https://npm.taobao.org/mirrors/node-sass/

以下的内容主要是这个问题出现的分析,有兴趣就看

======== 7月10日更新 ========

评论提醒了我,npm.taobao.org 已经收录了 node-sass 的源码,可以直接指定下载的地址,参考:

https://github.com/lmk123/blog/issues/28

https://cnodejs.org/topic/5637549fd426a1404cbd0614

============ 原文 ============

一个 node 项目里用到了 node-sass@3.8.0 ,安装的时候在这一步:

> node-sass@3.8.0 install path/to/project/node_modules/node-sass
> node scripts/install.js

一直卡住,至少有半个小时没反应,自己的 Mac 和腾讯云的服务器上都是这样

去看 node_modules/node-sass/scripts/install.js 的代码,发现是要在 GitHub 上下载编译好的 node-sass 二进制包 ,去看 node-sass 的 Release,平均在 2.5 MB 左右

于是明了了,GitHub 在国内访问本来就不稳定,然后还是用 request 去访问,就更慢了。看了一下,半个小时左右才下了 500 K

正好又在 这里 的 getBinaryPath() 可以设置二进制的位置。在这之前还要先知道自己的系统需要的版本。

用这行命令:

node -p "[process.platform, process.arch, process.versions.modules].join('-')"

复制输出的结果,去 Release 列表 找到对应的版本,Ctrl+F 粘贴,找到那个文件,下载(必要的时候挂代理,浏览器下载通常都比 node 下载更快更稳定),然后文件存到一个稳定的路径,并复制路径(比如 ~/.node/.npm/node-sass/darwin-x64-48_binding.node

在 ~/.npmrc 下面新增一行,新增 sass_binary_path 项并填入刚才的路径,比如

sass_binary_path=/home/ubuntu/.npm/node-sass/darwin-x64-48_binding.node

最后再去项目目录下:

 
rm -rf node_modules/ && npm i
posted @ 2016-12-13 23:54 张旋 阅读(7231) 评论(0) 推荐(0) 编辑
摘要: 本文是《哈佛商业评论》创刊以来重印次数最多的文章之一。作者彼得·德鲁克,自1971年后长期在美国加利福尼亚州克莱尔蒙特研究生大学任教。该文首次发表于1999年,节选自其著作《21世纪的管理挑战》(Management Challenges for the 21st Century,HarperCol 阅读全文
posted @ 2016-01-27 21:01 张旋 阅读(314) 评论(0) 推荐(0) 编辑
摘要: 问题原因:"play"脚本中有特殊符号。解决方案:写脚本去掉即可。代码:fixplay.py 放在play-1.4.0目录下执行。亲测在osx与ubuntu下均可用。with open('play', 'rb+') as f: content = f.read() f.seek(0) ... 阅读全文
posted @ 2015-11-25 13:47 张旋 阅读(244) 评论(0) 推荐(0) 编辑
摘要: 链接 http://stackoverflow.com/questions/6132892/consuming-json-in-play-framework-controller@Globalpublic class JsonObjectBinder implements TypeBinder { @Override public Object bind(String name, Annotation[] annotations, String value, Class actualClass, Type genericType) throws Exception { ... 阅读全文
posted @ 2014-02-23 16:39 张旋 阅读(831) 评论(0) 推荐(0) 编辑
摘要: 源码: http://github.com/zxsoft/seagame在线玩: http://www.ytbger.org/seagame 阅读全文
posted @ 2014-02-23 16:36 张旋 阅读(230) 评论(0) 推荐(0) 编辑
摘要: http://www.java2s.com/Tutorial/Java/0120__Development/CompileString.htm importjava.lang.reflect.Method;importjava.net.URI;importjava.util.Iterator;importjava.util.NoSuchElementException;importjavax.to... 阅读全文
posted @ 2010-04-30 09:45 张旋 阅读(556) 评论(0) 推荐(0) 编辑
摘要: Play! Framework 是07年的一个项目,08年开源,09年11月25日发布了1.0版。发布后我就一直在学习这个框架。现在正式发布版本已经是1.01版,而且1.1版本也在每日更新。可以在http://download.playframework.org下载已发布版本,和每日的最新版。学习Play!的过程中,最经常的感受就是——简直太简单了!并不是说Play!是一个... 阅读全文
posted @ 2010-01-24 15:48 张旋 阅读(1384) 评论(4) 推荐(1) 编辑
摘要: 作者Dionysios G. Synodinos译者张龙发布于 2009年11月25日 上午12时29分社区Java主题语言设计,语言,变更标签语言特性,闭包(Closures)近日Mark Reinhold在Devoxx的演讲中宣布JDK 7将增加闭包特性。由于添加了这个饱受争议的特性,JDK 7的发布时间将推迟至明年9月左右。Project Coin(旨在对Java 7进行小幅度的语言改进)的... 阅读全文
posted @ 2010-01-20 23:10 张旋 阅读(561) 评论(0) 推荐(0) 编辑
摘要: 冷观PDM孟繁晶0、引言产品数据管理(ProductDataManagement,PDM)是二十世纪八十年代出现的一门信息管理技术,它主要解决了企业中大量产品数据存储与管理的问题。然而,随着IT技术与管理理念的不断发展,PDM的内涵与外延又不断得到拓展,并得到了各大企业的关注与支持。我国对PDM技术的广泛关注始于九十年代中期,一方面国内许多企业开始认同并实施PDM,另一方面国内各大高校及软件公司开... 阅读全文
posted @ 2010-01-14 00:49 张旋 阅读(661) 评论(1) 推荐(0) 编辑
摘要: 从理论上讲,PDM相对于ERP应该是比较容易成功的,因为它至少有三方面优势:  首先,PDM服务于专业设计人员,只要能让设计人员的潜力得以发挥,PDM的价值就体现了,不会导致企业内权力再分配,引发的矛盾自然就少得多;  其次,PDM实施在业务上主要是企业的研发管理部门。和ERP不一样,少了很多业务部门之间协同的管理改造复杂难度。而且尽管不同企业的研发业务流程差异很大,但实际上这种流程的模块性很强,... 阅读全文
posted @ 2010-01-13 22:23 张旋 阅读(372) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示