windows下weex环境搭建遇到的那些坑

现在出现了越来越多的开源的项目供我们使用,对于使用mac和linux的同学来说用起来简直就是一种开心的不要要的事情,但对于一些使用windows的童鞋来说,有时候确是一种痛苦的事情,很多环境的搭建过程中就会遇到很多的坑,也会大大的打击了一些同学一腔的热血。今天就来说说weex环境搭建过程中的一些坑。(以windows为例)

1、Node.js的安装

Node.js的安装和平时我们安装windows的软件是一样的,我们可以在Node.js 官网选择下载稳定版的Node.js安装包,然后一路安装,完成之后打开windows的终端窗口,输入:Node -v,出现版本号说明Node.js安装成功。

>C:\Users\root>node -v
>v6.10.3

通常,安装了 Node.js 环境,npm 包管理工具也随之安装了,我们可以继续输入:npm -v 或者 npm -version (笔者测试 Node不支持 -version命令),同样的,如果你能看到版本号,则说明npm也可以使用了。

>C:\Users\root>npm -v
>3.10.10

npm(node package manager),通常称为node包管理器。它的主要功能就是管理node包,包括:安装、卸载、更新、查看、搜索、发布等。

2、weex-toolkit的安装

到了这里,我遇到的一个大坑就出现了。按照 weex 官方 的教程,我们使用npm安装weex-toolkit:

>npm install -g weex-toolkit

然而,这个时候看到了一句话:

国内开发者可以考虑使用淘宝的 npm 镜像 —— cnpm 安装 weex-toolkit

$ npm install -g cnpm --registry=https://registry.npm.taobao.org
$ cnpm install -g weex-toolkit
```
*提示:*
>如果提示权限错误(*permission error*),使用 sudo
 关键字进行安装
```
$ sudo cnpm install -g weex-toolkit
```

于是,果断使用cnpm安装weex-toolkit,谁让我们是国内开发者呢。一路畅通,安装完成,打开cmd,输入:   *weex -v*,OK,版本号出来了,大喜,这不就成功了么,然后再试试输入:*weex* 命令,结果gg了,出现了:
```
C:\Users\root\AppData\Roaming\npm\node_modules\weex-toolkit\node_modules\_xtoolkit@0.2.7@xtoolkit\src\package\NpmPackage.js:50
                throw new Error('resolve path error:'+this.path)
                ^

Error: resolve path error:C:\Users\root\AppData\Roaming\npm\node_modules\weex-toolkit\node_modules\_weex-previewer
    at NpmPackage.resolve (C:\Users\root\AppData\Roaming\npm\node_modules\weex-toolkit\node_modules\_xtoolkit@0.2.7@xtoolkit\src\package\NpmPackage.js:50:23)
    at Command.run (C:\Users\root\AppData\Roaming\npm\node_modules\weex-toolkit\node_modules\_xtoolkit@0.2.7@xtoolkit\src\Command.js:43:13)
    at XToolkit._done (C:\Users\root\AppData\Roaming\npm\node_modules\weex-toolkit\node_modules\_xtoolkit@0.2.7@xtoolkit\src\xtoolkit.js:149:36)
    at process.nextTick (C:\Users\root\AppData\Roaming\npm\node_modules\weex-toolkit\node_modules\_xtoolkit@0.2.7@xtoolkit\src\xtoolkit.js:90:22)
    at _combinedTickCallback (internal/process/next_tick.js:73:7)
    at process._tickCallback (internal/process/next_tick.js:104:9)
    at Module.runMain (module.js:606:11)
    at run (bootstrap_node.js:390:7)
    at startup (bootstrap_node.js:150:9)
    at bootstrap_node.js:505:3
```
这很显然,安装weex的路径有问题,或者也有人说是cnpm镜像上的weex有问题,这个就不知道了,果断卸载cnpm安装的weex,重新使用npm安装试试:
```
>npm uninstall -g weex-toolkit
>npm install -g weex-toolkit
```
接下来,坑又出现了,果然出现了权限检查的问题,并且直接最后报错:

![](http://upload-images.jianshu.io/upload_images/1812578-3948ff1c408ae1e7.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

![](http://upload-images.jianshu.io/upload_images/1812578-b441a1b8cb7d1904.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

然而,大家知道,windows是不支持 *sudo* 命令的,所以我们就要考虑其他的解决办法,最简单的就是,既然路径```C:\Users\root\AppData\Roaming\npm\node_modules\weex-toolkit\node_modules```没有写入权限,那我们就换个路径好了。

再次打开cmd,输入:
```
>npm config ls
```
可以看到npm和node的一些信息和配置路径:
```
C:\Users\root>npm config ls
; cli configs
user-agent = "npm/3.10.10 node/v6.10.3 win32 x64"

; userconfig C:\Users\root\.npmrc
prefix = "C:\\Users\\root\\AppData\\Roaming\\npm"
registry = "https://registry.npm.taobao.org/"

; builtin config undefined

; node bin location = C:\Program Files\nodejs\node.exe
; cwd = C:\Users\root
; HOME = C:\Users\root
; "npm config ls -l" to show all defaults.
```
*prefix* 的路径刚好就是我们写不进去的路径,接下来,我们在任意地方新建一个文件夹(最好不要有中文和空格),我们修改 *prefix *:
```
>npm config set prefix "I:\Nodejs\node_modules"
```
然后依然使用npm安装:
```
>npm install -g weex-toolkit
```
我们会发现已经没有了权限的提醒和最后的Error,完美安装成功!你以为到这里就结束了,现在打开cmd,输入*weex*,发现会显示命令无效,我们继续,回到桌面,在计算机图标上右键->属性->高级系统设置->环境变量->系统变量->Path中,把刚才我们自己新建的文件夹添加进去,注意:别忘记在路径的最后添加反斜杠,表示路径之下还有文件存在。重新打开一个终端,输入weex,发现可以正常使用了。

致此,weex环境在windows的问题就解决了,终于可以向着weex前进了,然而,后面的路上,依然坑坑洼洼。















最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,761评论 5 460
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,953评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,998评论 0 320
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,248评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,130评论 4 356
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,145评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,550评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,236评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,510评论 1 291
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,601评论 2 310
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,376评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,247评论 3 313
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,613评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,911评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,191评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,532评论 2 342
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,739评论 2 335

推荐阅读更多精彩内容