На немного устаревшей платформе npm / node я получаю эту ошибку при попытке установить grunt.
npm ERR! peerinvalid The package grunt does not satisfy its siblings' peerDependencies requirements!
npm ERR! peerinvalid Peer grunt-bake@0.2.1 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-copy@0.4.1 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-clean@0.5.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-sass@0.8.1 wants grunt@>=0.4.0
npm ERR! peerinvalid Peer grunt-http-server@1.1.0 wants grunt@~0.4.0
npm ERR! peerinvalid Peer grunt-contrib-watch@0.6.1 wants grunt@~0.4.0
npm ERR! System Linux 4.9.25
npm ERR! command "/usr/bin/node" "/usr/bin/npm" "install" "grunt"
npm ERR! cwd /some_workpath/workspace/1.1_build/src/main/grunt
npm ERR! node -v v0.10.21
npm ERR! npm -v 1.3.11
npm ERR! code EPEERINVALID
Проблема: я понятия не имею, что npm пытается мне сказать.
В соответствии с Эта статья в блоге nodejs, EPEERINVALID
означает, что у определенной зависимости - скажем, grunt - есть плагины. Эти плагины также зависят от grunt, но версия grunt, которую вы пытаетесь установить, несовместима с версией grunt, которую хотят плагины. Обычно, если вы устанавливаете через package.json, это не проблема, но если вы используете npm install grunt
в том же каталоге, где установлены эти плагины, они не будут работать, потому что вы пытаетесь установить новую версию grunt, которая может не поддерживаться.
На данный момент у вас есть несколько решений, которые вы можете использовать:
package.json
Бегать npm install
в том же каталоге, что и проект, у которого есть эти зависимости.
Бегать npm install grunt@0.4.0
вместо того npm install grunt
Обратите внимание на пакеты в выводе команды, а затем обновите их, используя npm update
или npm uninstall