Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

NPM start (erro)

Apos ter instalado o node , ao executar o NPM na pasta do servidor:

~/Documentos/alura/angular2/01-alurapic/alurapic/server$ npm start

Gera o seguinte erro:

npm ERR! npm  v3.5.2
npm ERR! code ELIFECYCLE
npm ERR! alurapic@1.0.0 start: `node server.js`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the alurapic@1.0.0 start script 'node server.js'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the alurapic package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node server.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs alurapic
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls alurapic
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/wesley-patrick/Documentos/alura/angular2/01-alurapic/alurapic/server/npm-debug.log
4 respostas

Você esta usando Linux? Se sim, dá uma olhada em

https://cursos.alura.com.br/course/angular2-parte1/task/14391

Lá, tem uma parte em negrito assim:

Atenção: em algumas distribuições Linux, pode haver um conflito de nomes quando o Node é instalado pelo apt-get. Neste caso específico, no lugar do binário ser node, ele passa a se chamar nodejs. Isso gera problemas, como a instrução npm start procura o binário node e não nodejs, ela não funcionará. Para resolver, use a seguinte instrução no terminal para subir o servidor:

nodejs server

Ou no Ubuntu:

sudo ln -s /usr/bin/nodejs /usr/bin/node

Depois, o comando npm start funcionará conforme esperado.

Será que esse é o seu caso?

Ola flavio. Sim eu uso linux e fiz todos esses procedimentos citados porem ocorre um outro erro ..

nodejs server
wesley-patrick@Inspiron-3443:~/Documentos/alura/angular2/01-alurapic/alurapic/server$ nodejs server
Banco data.db pronto para uso
/home/wesley-patrick/Documentos/alura/angular2/01-alurapic/alurapic/client
events.js:141
      throw er; // Unhandled 'error' event
      ^

Error: listen EADDRINUSE :::3000
    at Object.exports._errnoException (util.js:870:11)
    at exports._exceptionWithHostPort (util.js:893:20)
    at Server._listen2 (net.js:1237:14)
    at listen (net.js:1273:10)
    at Server.listen (net.js:1369:5)
    at Object.<anonymous> (/home/wesley-patrick/Documentos/alura/angular2/01-alurapic/alurapic/server/server.js:5:24)
    at Module._compile (module.js:410:26)
    at Object.Module._extensions..js (module.js:417:10)
    at Module.load (module.js:344:32)
    at Function.Module._load (module.js:301:12)
sudo ln -s /usr/bin/nodejs /usr/bin/node
ln: falhou ao criar link simbólico '/usr/bin/node': Arquivo existe
solução!

Quando dá esse erro de Error: listen EADDRINUSE :::3000 é porque há outro serviço usando a porta 3000. Será que você não tem meteor ou outra coisa ai rodando não? A a porta essa sendo usada. Reinicie seu computador e tente como comando que você fez funcionar.

Se continuar o erro, então, não sei o que esta habilitado na sua máquina, mas se não conseguir, podemos "roubar". Você pode trocar a porta de 3000 para 8080 ou outro número com quatro dígitos e usar até o final do curso.

Então, em último caso, altere o arquivo serve.js e onde estiver 3000 mude para 8080. Daí, para acessar o servidor basta fazer localhost:8080.

Aguardo seu retorno meu aluno.

Realmente era a porta que estava sendo usada pela uma outra aplicação.

Só foi alterar o endereço da porta no arquivo .js que rodou legal ;)

Obrigado, agora bora continuar meus estudos!