Como matar processos java (Windows e Linux) via Java Virtual Machine Process Status Tool (JPS)
Tags: java, linux, windows, braziliandevs
Published: 2023-03-26 23:16:27

Matar um processo Java pode ser necessário em várias situações, como quando um aplicativo trava ou quando é preciso reiniciá-lo por algum motivo. A ferramenta JPS (Java Virtual Machine Process Status Tool) pode ser útil nesses casos, permitindo que você identifique o PID (identificador do processo) do processo Java em execução e o mate manualmente. Neste tutorial, vamos explicar como matar processos Java usando a ferramenta JPS em sistemas operacionais Windows e Linux, destacando as diferenças entre os dois sistemas.

### Matando processos Java via JPS no Windows
Para matar um processo Java usando o JPS no Windows, siga estes passos:

1. Abra o prompt de comando: pressione a tecla "Win" + "R" e digite "cmd" na caixa de diálogo "Executar" que aparece. Em seguida, clique em "OK" ou pressione "Enter" para abrir o prompt de comando.
 
2. Digite o comando "jps -l" e pressione "Enter". Isso exibirá uma lista dos processos Java em execução no sistema, juntamente com seus PIDs e nomes de classe.
 
3. Anote o PID do processo que você deseja matar.
 
4. Digite o comando "taskkill /pid [PID] /f" e pressione "Enter". Substitua "[PID]" pelo PID do processo que você anotou no passo anterior. O parâmetro "/f" é usado para forçar a finalização do processo.
 
5. Aguarde alguns segundos até que o processo seja encerrado.
 

### Matando processos Java via JPS no Linux

Para matar um processo Java usando o JPS no Linux, siga estes passos:

1. Abra um terminal: pressione "Ctrl" + "Alt" + "T" ou pesquise por "Terminal" no menu Iniciar.

2. Digite o comando "jps" e pressione "Enter". Isso exibirá uma lista dos processos Java em execução no sistema, juntamente com seus PIDs e nomes de classe.

3. Anote o PID do processo que você deseja matar.

4. Digite o comando "kill [PID]" e pressione "Enter". Substitua "[PID]" pelo PID do processo que você anotou no passo anterior.

5. Aguarde alguns segundos até que o processo seja encerrado.

Diferenças entre finalizar um processo entre Windows e Linux
Existem algumas diferenças entre a finalização de processos Java usando o JPS no Windows e no Linux:

No Windows, usamos o comando "taskkill" para finalizar um processo, enquanto no Linux usamos o comando "kill". Além disso, no Windows, precisamos usar o parâmetro "/f" para forçar a finalização do processo, enquanto no Linux o comando "kill" encerra o processo imediatamente.

No Linux, o comando "kill" envia um sinal SIGTERM para o processo, permitindo que ele encerre suas atividades normalmente. Se o processo não responder ao sinal SIGTERM em um período de tempo determinado, o Linux enviará um sinal SIGKILL, que forçará a finalização do processo. No Windows, o comando "taskkill" força a finalização imediata do processo, sem permitir que ele encerre suas atividades normalmente.

No Windows, a ferramenta JPS é instalada automaticamente junto com o JDK (Java Development Kit). Se você tiver o JDK instalado em seu sistema, a ferramenta JPS estará disponível no prompt de comando. Caso contrário, você precisará instalar o JDK para usar o JPS.

No Linux, a ferramenta JPS é instalada automaticamente junto com o JRE (Java Runtime Environment). Se você tiver o JRE instalado em seu sistema, a ferramenta JPS estará disponível no terminal. Caso contrário, você precisará instalar o JRE para usar o JPS.

Lembre-se de que matar um processo Java pode causar perda de dados e interromper o funcionamento de outros aplicativos que dependem do processo. Certifique-se de que o processo que você está matando é seguro para finalizar e faça backup de seus dados antes de prosseguir. Além disso, sempre use a ferramenta JPS com cuidado e apenas quando necessário.