Node.js 是否存在安装/节点路径问题?

Node.js 是否存在安装/节点路径问题?,node.js,npm,yeoman,Node.js,Npm,Yeoman,几天前,他利用约曼公司进行了一个项目。在做了一些修改之后,我让它在我的电脑上工作,但是后来有些事情搞砸了,现在项目不再运行了。我认为这个问题与yeoman在一个地方安装有关,但系统在另一个地方寻找它。我想,但很明显,我不知道事情到底出了什么问题 我认为这两个地点是: Users/brian/ usr/local/lib usr/local/bin 我不确定Yeoman的设备应该安装在哪里。我意识到最初我是用sudo来安装东西的,这可能会把事情搞砸,或者我是在用自制的。我已经卸载了自制软件,不再

几天前,他利用约曼公司进行了一个项目。在做了一些修改之后,我让它在我的电脑上工作,但是后来有些事情搞砸了,现在项目不再运行了。我认为这个问题与yeoman在一个地方安装有关,但系统在另一个地方寻找它。我想,但很明显,我不知道事情到底出了什么问题

我认为这两个地点是:

Users/brian/
usr/local/lib
usr/local/bin
我不确定Yeoman的设备应该安装在哪里。我意识到最初我是用sudo来安装东西的,这可能会把事情搞砸,或者我是在用自制的。我已经卸载了自制软件,不再需要使用sudo for nom来安装东西

$ node -v
v0.10.22

$ npm -v
1.3.14

$ echo $NODE_PATH
不返回任何内容

$ echo $PATH
/Users/brian/.rvm/gems/ruby-2.0.0-p0/bin:/Users/brian/.rvm/gems/ruby-2.0.0-p0@global/bin:/Users/brian/.rvm/rubies/ruby-2.0.0-p0/bin:/Users/brian/.rvm/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin


$ which npm
返回/usr/local/bin/npm

$ npm install -g yo
似乎安装得很好,最后说:

/usr/local/bin/yo -> /usr/local/lib/node_modules/yo/bin/yo
yo@1.0.5 /usr/local/lib/node_modules/yo
但是如果你在它说: env:node\r:没有这样的文件或目录

如果我跑步:

sudo nano /etc/paths 
它显示了以下路径,其中我添加了最后一条路径:

/usr/bin
/bin
/usr/sbins
/usr/local/bin
/usr/local/bin/npm
我在很多地方都有node_模块文件夹

Users/brian/node_modules
usr/local/lib/node_modules
还有其他一些地方

哪里出了问题?npm应该在哪里安装yeoman的东西,系统是如何引用它的,所以当我写$yo-v之类的东西时,它知道它在哪里

非常感谢你在这方面的帮助


谢谢大家!

推出
yo
时出现了
1.0.5
问题。尝试基本上:

$ npm uninstall -g yo
$ npm cache clean
$ npm install -g yo

1.0.5
发布
yo
时出现问题。尝试基本上:

$ npm uninstall -g yo
$ npm cache clean
$ npm install -g yo

在更改全局节点安装的默认目录后,我遇到了相同的问题。这是我修复的:

从终端类型:

$ which yo
在您的情况下,路径看起来像(或类似的东西)


现在,您只需将此路径
/Users/brian/npm/bin/
添加到
.bash\u概要文件中的
$path
变量中。然后注销并重新登录,然后键入
yo

在更改全局节点安装的默认目录后,我遇到了相同的问题。这是我修复的:

从终端类型:

$ which yo
在您的情况下,路径看起来像(或类似的东西)

现在,您只需将此路径
/Users/brian/npm/bin/
添加到
.bash\u概要文件中的
$path
变量中。然后注销并重新登录,然后键入
yo

感谢Bartvds()

出现此问题的原因是windows和*nix机器之间的行结束符不同

调用节点时,使用shebang的CLI文件,此线端终止符会导致问题

#! /usr/bin/env node
您可以使用dos2unix实用程序将带有此shebang的文件转换为*nix友好格式,它应该可以正常工作

这个问题不仅仅针对约曼人!由于Bartvds(),我最近在interfake节点包中遇到了相同的问题

出现此问题的原因是windows和*nix机器之间的行结束符不同

调用节点时,使用shebang的CLI文件,此线端终止符会导致问题

#! /usr/bin/env node
您可以使用dos2unix实用程序将带有此shebang的文件转换为*nix友好格式,它应该可以正常工作


这个问题不仅仅针对约曼人!我最近在InterMake node package中遇到了同样的问题

当我全局安装stuff时,它会将文件安装到:usr/local/lib/node_模块当我全局安装stuff时,它会将文件安装到:usr/local/lib/node_模块谢谢!我在windows上,在我安装python easy_install yo之后,在我运行您的命令之后,找不到已安装的生成器,一切又开始工作了!感谢我在windows上,在我安装python easy_install yo之后,在我运行您的命令之后,找不到已安装的生成器,一切又开始工作了!