Использование Ubuntu 13.10
Я пытаюсь установить yeoman с помощью sudo 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
> yo@1.2.1 postinstall /usr/lib/node_modules/yo
> node ./scripts/doctor
[Yeoman Doctor] Everything looks alright!
yo@1.2.1 /usr/lib/node_modules/yo
├── is-root@0.1.0
├── fullname@0.1.1
├── opn@0.1.2
├── async@0.9.0
├── shelljs@0.3.0
├── lodash@2.4.1
├── multiline@0.3.4 (strip-indent@0.1.3)
├── sudo-block@0.4.0 (chalk@0.4.0)
├── nopt@3.0.1 (abbrev@1.0.5)
├── chalk@0.5.1 (escape-string-regexp@1.0.1, ansi-styles@1.1.0, supports- color@0.2.0, strip-ansi@0.3.0, has-ansi@0.1.0)
├── string-length@0.1.2 (strip-ansi@0.2.2)
├── findup@0.1.5 (commander@2.1.0, colors@0.6.2)
├── yosay@0.3.0 (ansi-regex@0.2.1, pad-component@0.0.1, ansi-styles@1.1.0, word-
wrap@0.1.3, strip-ansi@0.2.2, minimist@0.2.0, chalk@0.4.0, taketalk@0.1.1)
├── update-notifier@0.2.0 (semver-diff@0.1.0, latest-version@0.2.0,
configstore@0.3.1)
├── insight@0.3.1 (object-assign@0.1.2, chalk@0.4.0, async@0.2.10,
lodash.debounce@2.4.1, inquirer@0.4.1, request@2.27.0, configstore@0.2.3)
└── yeoman-generator@0.17.2 (dargs@0.1.0, github-username@0.1.1, diff@1.0.8,
class-extend@0.1.1, rimraf@2.2.8, chalk@0.4.0, text-table@0.2.0, mime@1.2.11,
isbinaryfile@2.0.1, debug@1.0.4, grouped-queue@0.3.0, mkdirp@0.5.0,
underscore.string@2.3.3, glob@4.0.5, iconv-lite@0.2.11, findup-sync@0.1.3, file-
utils@0.2.0, download@0.1.18, cheerio@0.17.0, request@2.39.0, gruntfile-
editor@0.1.1, inquirer@0.5.1)
Похоже, что yeoman установлен правильно, но он не работает - когда я печатаю yo, ничего не происходит ... Нужно ли указывать yo в моем $PATH
? Я не совсем уверен, как это сделать. Кроме того, как мне настроить npm
, чтобы мне не приходилось использовать sudo npm
?
Стоит отметить, что Ubuntu 13.10 официально больше не поддерживается, но это не должно иметь большую часть значения для этих инструкций.
Первые вещи сначала, давайте разберемся в полномочиях. Большинство инструкций по установке Node.js для Ubuntu дает Вам команду устанавливать Node.js или из официальных репозиториев или от chris-lea PPA. Так или иначе Вы закончите тем, что установили Node.js и NPM использование sudo
, который приводит к путанице полномочий на машинах разработки.
существует вопрос на StackOverflow о том, как "зафиксировать" эти полномочия, хотя в большинстве случаев, необходимо будет сделать пользователя владельцем /usr/local/lib/node_modules
лет, который является супер поверхностным.
Вместо этого я думаю, что лучший ответ безусловно к установка Node.js использование NVM. В дополнение к разрешению Вам выполнить несколько версий Node.js на том же компьютере, эта опция также сохраняет все в Вашей домашней папке, таким образом, Ваш пользователь владеет NPM, и Вы не должны бездельничать с sudo npm
.
, Как только в Ваших полномочиях разбираются, все шаги, которые Вы сделали, чтобы установить и выполнить Йомена (npm install -g yo
), должны работать просто великолепно.
необходимо будет работать nvm use v0.10
каждый раз, когда Вы запускаете новый терминальный сеанс, как бы то ни было. Можно обойти это путем добавления сценария к Вашему .bashrc
, который автоматически выполнит это для Вас в начале каждой сессии,
Необходимо проверить этот сообщение
, оно решает эту проблему