Yeoman安装/节点路径问题?

时间:2013-12-10 20:48:06

标签: node.js npm yeoman

几天前,使用自耕农参与一个项目。经过一番摆弄后,我让它在我的电脑上运行,但随后出现了一些问题,现在项目已不再运行了。我认为这个问题与yeoman安装在一个地方有关,但是系统在另一个地方寻找它。我想,但显然,我并不确切知道哪里出了问题。

我认为这两个地点是:

Users/brian/
usr/local/lib
usr/local/bin

我不确定应该为Yeoman安装什么东西。我意识到,最初,我使用sudo来安装东西,这可能搞砸了一些东西,或者我正在使用自制软件。我已经卸载了自制软件,不再需要使用sudo来安装。

$ 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

但是如果你在说完之后运行yo -v: env:node \ r:没有这样的文件或目录

如果我跑:

sudo nano /etc/paths 

它显示了以下路径,其中我添加了最后一条路径:

/usr/bin
/bin
/usr/sbins
/usr/local/bin
/usr/local/bin/npm

我在很多地方都有node_modules文件夹。

Users/brian/node_modules
usr/local/lib/node_modules

以及其他一些地方。

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

这样的东西时它在哪里

非常感谢你对此有任何帮助。

谢谢!

3 个答案:

答案 0 :(得分:6)

1.0.5启动yo时出现问题。试试some solutions from other users。基本上是:

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

答案 1 :(得分:0)

我更改了全局节点安装的默认目录后遇到了同样的问题。在这里我解决了这个问题:

从终端类型:

$ which yo

在您的情况下,路径看起来像(或类似的)

/Users/brian/npm/bin/yo

现在,您只需将此路径/Users/brian/npm/bin/添加到$PATH文件中的.bash_profile变量即可。然后注销并重新登录并输入yo

答案 2 :(得分:0)

感谢Bartvds(https://github.com/yeoman/yeoman/issues/1236

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

调用节点时shebang的CLI文件,此行终止符导致问题。

#! /usr/bin/env node

您可以使用dos2unix实用程序将此shebang文件转换为* nix友好格式,它应该可以正常工作

这个问题不仅仅针对自耕农!我最近遇到了与interfake节点包

相同的问题