O que está acontecendo
De acordo com este artigo no blog do nodejs, EPEERINVALID
significa que uma certa dependência - vamos dizer grunhido, tem plugins. Esses plugins também dependem do grunhido, mas a versão do grunhido que você está tentando instalar não é compatível com a versão do grunhido que os plugins desejam. Geralmente, se você estiver instalando por meio de um pacote.json, isso não é um problema, mas se você estiver executando npm install grunt
no mesmo diretório em que esses plug-ins estão instalados, eles falharão porque você está tentando instalar uma versão mais recente do grunhido que pode não ser suportado.
Soluções
Neste ponto, você tem algumas soluções que você pode usar:
Instale a versão em package.json
Execute npm install
no mesmo diretório do projeto que possui essas dependências.
Instale uma versão específica e compatível do grunhido
Execute npm install [email protected]
em vez de npm install grunt
Atualizar (ou remover) os plug-ins conflitantes
Observe os pacotes na saída do comando e atualize-os usando npm update
ou npm uninstall