Avatar
Por .

Criado em .
Atualização: .

Esse problema me deparei hoje, ao iniciar meus estudos com websocket em nodejs para criar um chat em meu projeto.

Criei um projeto chamado “websocket” com o NPM, para gerenciar as dependências.

Em seguida tentei instalar o módulo do websocket:

npm i --save websocket

E obtive a seguente saída:

npm ERR! Linux 4.15.0-34-generic
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "i" "websocket"
npm ERR! node v8.10.0
npm ERR! npm v3.5.2
npm ERR! code ENOSELF

npm ERR! Refusing to install websocket as a dependency of itself
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! <https://github.com/npm/npm/issues>

npm ERR! Please include the following file with any support request:
npm ERR! /srv/http/websocket/npm-debug.log

Como podemos ver na frase “Refusing to install websocket as a dependency of itself” (uso meu OS em inglês.), o gerenciador está se recusando a instalar o modulo websocket dentro do nosso projeto também chamado websocket, entendendo que estou tentando instalar o módulo como uma dependência de si próprio.

Para solucionar esse pequeno conflito, modifique o valor da chave name: que se refere ao nome do projeto, no arquivo package.json do seu projeto, para um que seja diferente de todas os possíveis módulos que você venha a utilizar ao longo do desenvolvimento.

Package.json atual:

{
  "name": "websocket",
  "version": "1.0.0",
  "description": "Estudo com websockets em nodejs",
  "main": "server.js",
  "scripts": {
      "test": "nodejs server.js",
      "start": "node server.js"
  },
  "author": "wesleyBU",
  "license": "ISC"
}

Package.json modificado:

{
  "name": "websocket-learn",
  "version": "1.0.0",
  "description": "Estudo com websockets em nodejs",
  "main": "server.js",
  "scripts": {
    "test": "nodejs server.js",
    "start": "node server.js"
  },
  "author": "wesleyBU",
  "license": "ISC"
}

Pronto. Não haverá conflito na instalação.