2

我正在发现Yeoman,并尝试安装 yeoman 的“入门”部分中显示的简单生成器。

我安装了 npm 然后 yo 和 bower 就像文档中解释的那样:

npm install -g yo bower

当我尝试安装 generator-webapp 和 generator-spring ( sudo npm install -g generator-webapp) 时,我在这两种情况下都会得到这个输出:

[...]
npm http 304 https://registry.npmjs.org/amdefine
npm http 304 https://registry.npmjs.org/es6-iterator
npm http 304 https://registry.npmjs.org/es6-symbol
npm ERR! peerinvalid The package yo does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer generator-mocha@0.1.6 wants yo@>=1.0.0
npm ERR! peerinvalid Peer generator-spring@0.1.2 wants yo@>=1.0.0-rc.1
npm ERR! peerinvalid Peer generator-webapp@0.5.1 wants yo@>=1.2.0

npm ERR! System Linux 3.11.0-12-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install" "-g" "generator-webapp"
npm ERR! cwd /home/adenoyelle
npm ERR! node -v v0.10.15
npm ERR! npm -v 1.2.18
npm ERR! code EPEERINVALID
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     /home/adenoyelle/npm-debug.log
npm ERR! not ok code 0

因此,我查看了 yo 版本的:

~ [ sudo npm update -g yo 
npm http GET https://registry.npmjs.org/yo
npm http 304 https://registry.npmjs.org/yo
~ [ yo -version
1.1.2

所以,我有几个问题:

  1. 为什么Yo的版本卡在1.1.2(好像有1.3.3的版本存在)
  2. 当我询问 generator-spring 时,为什么 Yo 还尝试获取 generator-webapp?generator-spring 只需要 Yo 1..0.0-rc.1 所以它应该可以工作。
4

1 回答 1

0

这也发生在我身上。我不知道为什么它会出现一些问题,甚至尝试通过分离安装任何依赖项。

无论如何,在花了几个小时安装、重新安装、清理缓存、谷歌搜索等等之后,我为解决这个问题所做的基本上是更新 nodejs。

我在 Linux Mint 上,那么 Ubuntu 和 Debian 应该是相同或相似的。

总结一下,

之前安装nvm

nvm ls-remote
nvm install 0.12.0
nvm use 0.12.0
node -v
npm install -g generator-webapp
npm install -g yo bower grunt-cli gulp

我建议使用 nvm 来更新节点,您可以按照本指南或教程进行操作

https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-an-ubuntu-14-04-server#how-to-install-using-nvm

之后,我可以毫无问题地安装 yo 及其依赖项。

顺便说一下,我选择了版本节点 v0.12.0

希望这有帮助

于 2015-03-02T11:53:52.670 回答