window下执行node命令失效
发布于 12 年前 作者 zhengpan 18621 次浏览 最后一次编辑是 8 年前

我用window cmd指令 使node执行js文件,老是报错,特别是涉及到一些文件里有require一些包的时候,就找不到或者报各种错误,但是用Cygwin又好好的。没有问题。求大虾教育。求解决方案,请问在window下命令行窗口下 node时,要配置些什么?

11 回复

http://cnodejs.org/topic/4f38f065301a48d50e053f6f

就是这个帖子上的问题,我设置了上面说的2个环境变量,但还是不顶用…

模块调用注意node_path这个环境变量

如果是linux你可以用env查看环境变量,cygwin不清楚

嗯 我的node_path设置的就是 C:\Program Files\nodejs\node_modules 这个 但是我不知道是不是指向全局模块,请问怎么才能指向全局模块 enter image description here

庆幸 Linux 上错误不多… 楼主要不按格式报错也贴一下好了

NODE_PATH已经不推荐使用了~

使用

npm config set prefix {globalModulePathPrefix}

来来设置全局模块的安装路径,即:{globalModulePathPrefix}/node_modules

非全局安装的话,是安装在当前目录的node_modules目录下

听不懂,大哥.能详细的说明下吗?

@bobchennan 恩 node_modules 里需要下载什么东西吗?node_path这个环境变量我需要放在path里吗? 我安装node-v0.6.17.msi后 本来就自动给我安装了两个环境变量。这是报错信息,还是跟node_path有关:enter image description here

算了 真纠结, 整不明白这个node_path东东。照dojo官网文档上说的在github下了个ajaxorg-node-builds 指向win32 用这个来编译得了。

@zhengpan 可以看下node官网文档module一节,来了解下node代码中require查找模块的路径机制!

PS:NODE_PATH设置的是一系列路径,当require按照规则找不到所需模块时,就去那个路径下找~ 可以这么理解,非全局模块如果你不想在每个工程下都安装同一模块的话,就可以把他们统一装在NODE_PATH下!

@zhengpan

系统中添加环境变量node_path,指向node_modules,比如E:\node_modules

然后path环境变量加入node.exe路径,保证能够调用就行

回到顶部