Estou aprendendo angular 2 e, pela primeira vez, estou usando o projeto CLI angular para criar um projeto sandbox.
Consegui executar o comando "ng serve" e funciona muito bem. Eu queria impedir que ele rodasse, então executei o "Control Z".
Quando tentei executar o comando "ng-serve" novamente, obtive-me "A porta 4200 já está em uso".
Corri o "PS" para obter uma lista do PID e matei o PID para o angular-cli e executei o "ng-serve" novamente, mesmo assim, dá a mesma porta em erro de uso.
Respostas:
Isto é o que eu usei para matar o progresso na porta 4200
Para usuários Linux:
Você também pode tentar o seguinte:
Para usuários do Windows:
O número da porta 4200 já está em uso. Abra o cmd como administrador. Digite abaixo o comando no cmd:
E, em seguida, localize a porta com o número da porta 4200 clicando com o botão direito do mouse no terminal e clique em Localizar, digite 4200 em "encontre o que" e clique em "encontrar próximo": digamos que você descobriu que o número da porta 4200 é usado pelo pid 18932. Digite o comando abaixo em cmd:
Para UNIX:
Agora execute o ngf (em vez do ng serve ) no terminal a partir da pasta do projeto. Isso matará todos os processos usando a porta 4200 e executa seu projeto Angular.
fonte
ng serve
em um diretório diferente? Não faz sentido matar o servidor dessa maneira e depois reiniciá-lo em outro lugar ou estou faltando alguma coisa?--port <new_port>
^Z
instância angular existente que estava usando a porta padrão, bobo!Abra seu
cmd.exe
comoadministrator
,Encontre o
PID
deport 4200
Aqui eu tenho 3 PID:
LISTENING
mate apenas a porta 4200 (mate o PID vermelho):
nota: matar o verde só fará com que seu navegador seja fechado à força.
agora você pode "ng-serve" para iniciar seu aplicativo angular na mesma porta 4200
Coisas adicionais:
Um liner: Depois de procurar uma maneira de otimizar isso, aqui está o comando One-liner desta resposta: (agradecimentos especiais a: Josep Alsina por estas dicas)
fonte
cmd
, nãoGit Bash
.No Mac OS X, você precisa do seguinte comando:
sudo lsof -t -i tcp:4200 | xargs kill -9
Lembre-se de que você precisa matar o servidor da Angular com Command + C.
fonte
Não ctrl + Z, você deve executar para parar ctrl + C
fonte
Use este comando para matar ng:
fonte
ng serve --port <YOUR_GIVEN_PORT_NUMBER>
Você deve tentar o comando acima para executar em sua porta especificada.
fonte
Quando você usa
Ctrl+Z
, suspenderá uma tarefa em execução, mas não a matará. Posteriormente, você pode usar o comandofg
para continuar a tarefa. Se você quiser sairng serve
, use-oCtrl+C
no qual também liberará a porta 4200.fonte
Agora você pode configurar
--port 0
para obter uma porta gratuita.fonte
--open
sinalizador, caso contrário você não saberá em qual porta foi iniciada.Podemos matar a porta com força, seguindo o comando.
fonte
Para Windows:
Prompt de Comando Aberto e
tipo:
netstat -a -o -n
Encontre o PID do processo que você deseja matar.
Tipo:
taskkill /F /PID 16876
Este 16876 - é o PID do processo que eu quero matar - nesse caso, o processo é 4200 - verifique o arquivo anexado. Você pode fornecer qualquer número de porta.
Agora, digite:
ng serve
para iniciar seu aplicativo angular na mesma porta 4200fonte
Estou compartilhando isso, pois os dois comandos seguintes não fizeram o trabalho no meu mac:
O seguinte foi o caso, mas se você estivesse usando o terminal integrado no Visual Code, tente usar o terminal da máquina e adicione o comando fowling:
fonte
Isso informará quem tem a porta.
fonte
e acessar usando
localhost:4201
Isso deve funcionar como uma solução temporária.
ou
tente listar o uso da porta
lsof -i:4200
e matá-lo manualmente usando
sudo kill -9 <Process PID using port 4200>
fonte
Em resumo, há mais de uma solução: 1) Usando outra porta para definir o número da porta,
2) matando o processo
3) Tipo
netstat -a -n -o
no prompt de comando, localize a porta PID relacionada e mate-a
taskkill /F /PID (pid number)
4) Tipo
netstat -ano|findstr :4200
tomou o PID do endereço estrangeiro que contém o número da porta e depois mata-o
taskkill /PID (pid number)/F
fonte
Para interromper toda a porta local em execução no Windows, use esse comentário simples sozinho, em vez de procurar pid separadamente usando netstat,
Ele encontra todo o pid e para a porta local que está atualmente em execução,
fonte
Basta reiniciar o IDE que você está usando, para que ele funcione.
fonte
Com ctrl + z, você coloca o programa em segundo plano. No Linux, você pode recuperar a sessão em primeiro plano com o seguinte comando:
fg ng serve
Você não precisa matar o processo.
fonte
O comando mais simples de uma linha:
fonte
No meu caso, nenhuma das opções acima mencionadas funcionou.
UBUNTU 18.04 VERSÃO
Abaixo o comando funcionou.
fonte
Se você estiver usando o VSCode, terá a opção de eliminar o terminal e adicionar um novo terminal. Feche a guia e abra uma nova guia. Funcionou para mim.
Editado: use ctrl + ce pressione y. Sem matar o terminal também, você pode prosseguir. Se você deseja abrir uma nova instância do visual studio e executar um aplicativo diferente, pode usar o ng serve --port 4401.
fonte
Terminal VScode no Ubuntu OS use o seguinte comando para matar o processo
fonte
Você também pode tentar executar o aplicativo no código do visual studio -:
você pode dar qualquer número de porta.
fonte
Diz que já estamos executando os serviços com a porta no 4200, use outra porta em vez do 4200. O comando abaixo é para resolver o problema
fonte
você pode usar o fuser -k 4200 / tcp se for o sistema operacional Linux
fonte
Finalize o processo e feche o terminal que você usou para executar o aplicativo nessa porta.
fonte
Em vez de interromper o processo ou usar todo
ctrl+z
, você pode simplesmente usarctrl+c
para parar o servidor e usar alegrementeng serve command
sem nenhumerrors
ou, se desejar executar em uma porta diferente, basta usar este comandong serve --port portno(ex: ng serve --port 4201)
.fonte
Para o Ubndu 18.04, sudo lsof -t -i tcp: 3000 | xargs kill -9
Isso acontece quando a porta foi encerrada sem êxito, portanto este comando a encerrará 4200 ou 3000 ou 3300
fonte
Também enfrentei o mesmo erro msg, então tentei ng serve --port 12012 e funcionou bem.
fonte
Se você estiver compilando seu código JS angular no CMD e no IDE, esse problema ocorrerá. No CMD, seu código JS angular é compilado automaticamente sempre que você altera seu código JS angular no IDE e, em seguida, seu IDE deseja ocupar a mesma porta, por exemplo, 4200, que já é ocupada pelo CMD. Portanto, existe uma solução simples para esse problema, basta fechar o seu cmd ao compilar seu código no IDE.
fonte
Eu estava enfrentando o mesmo problema toda vez que tenho que matar o porto.
Eu tentei em
./node_modules/.bin/ng serve --proxy-config proxy.conf.json --host 0.0.0.0
vez denpm start
e seus trabalhosfonte