使用 Ubuntu 13.10
我正在尝试使用安装 yeomansudo npm install -g yo
但它似乎无法在全球范围内工作npm
并且nodejs
已安装,但是,我不确定它们是否已正确安装以在全球范围内使用。我不能使用npm
我必须使用sudo npm
要安装我使用的节点js
$ sudo apt-get install python-software-properties
$ sudo apt-add-repository ppa:chris-lea/node.js
$ sudo apt-get update
$ sudo apt-get install nodejs
当我使用sudo npm install -g yo
我得到的输出时
/usr/bin/yo -> /usr/lib/node_modules/yo/cli.js
> [email protected] postinstall /usr/lib/node_modules/yo
> node ./scripts/doctor
[Yeoman Doctor] Everything looks alright!
[email protected] /usr/lib/node_modules/yo
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected], supports- [email protected], [email protected], [email protected])
├── [email protected] ([email protected])
├── [email protected] ([email protected], [email protected])
├── [email protected] ([email protected], [email protected], [email protected], word-
[email protected], [email protected], [email protected], [email protected], [email protected])
├── [email protected] ([email protected], [email protected],
[email protected])
├── [email protected] ([email protected], [email protected], [email protected],
[email protected], [email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected],
[email protected], [email protected], [email protected], [email protected], [email protected],
[email protected], [email protected], [email protected], [email protected],
[email protected], [email protected], [email protected], [email protected], file-
[email protected], [email protected], [email protected], [email protected], gruntfile-
[email protected], [email protected])
所以看来 yeoman 已正确安装,但它无法正常工作 - 当我键入 yo 时没有任何反应......我需要将 yo 放入我的$PATH
吗?我不太确定该怎么做。此外,我该如何配置npm
才能不必使用sudo npm
?
值得注意的是,官方不再支持 Ubuntu 13.10,但这对这些说明应该没有太大影响。
没有 sudo 的 npm
首先,让我们整理一下权限。大多数适用于 Ubuntu 的 Node.js 安装指南都会指导您从官方存储库或 chris-lea PPA 安装 Node.js。无论哪种方式,您最终都会使用 来安装 Node.js 和 NPM
sudo
,这会导致开发机器上的权限混乱。StackOverflow 上有一个关于如何“修复”这些权限的问题,尽管在大多数情况下,您必须让您的用户成为 的所有者
/usr/local/lib/node_modules
,这是非常粗略的。相反,我认为目前最好的答案是使用 NVM 安装Node.js。除了让您在同一台计算机上运行多个版本的 Node.js 之外,此选项还将所有内容保存在您的主文件夹中,因此您的用户拥有 NPM,而您不必在
sudo npm
.使用哟
一旦你的权限被整理出来,你安装和运行 Yeoman ( ) 所采取的所有步骤
npm install -g yo
应该都可以正常工作。nvm use v0.10
但是,每次启动新的终端会话时都必须运行。您可以通过向您添加一个脚本来解决这个问题,该脚本.bashrc
将在每个会话开始时自动为您运行,你应该看看这篇文章
它解决了这个问题