Процесс удаления Windows по номеру ПОРТА

Я использую встроенный сервер Tomcat в IDE Spring Tool Suite. Моя проблема в том, что когда я запускаю свой проект, возникает следующая ошибка:

***************************
APPLICATION FAILED TO START
***************************

Description:

The Tomcat connector configured to listen on port 8080 failed to start. The port may already be in use or the connector may be misconfigured.

Action:

Verify the connector's configuration, identify and stop any process that's listening on port 8080, or configure this application to listen on another port.

Есть несколько похожих вопросов, но ни один из ответов не работает для меня.


person Janaka Ekanayake    schedule 23.03.2019    source источник


Ответы (2)


Решение 1: убить процесс

Запустите командную строку от имени администратора

netstat -ano | findstr :<yourPortNumber>
taskkill /PID <typeyourPIDhere> /F

Решение 2: изменить порт

Убедитесь, что новый порт, который вы собираетесь установить для своего приложения, не прослушивает другие процессы

Change the port 
server.port=8088 # Server HTTP port.

Решение 3. Другой способ - завершить процесс (в IDE), очистить и перестроить проект.

введите описание изображения здесь

введите описание изображения здесь

ОБНОВЛЕНИЕ:

Для решения 2 Убедитесь, что новый порт, который вы собираетесь установить для своего приложения, не прослушивает другие процессы.

Как проверить статус порта?

Вариант 1

Запустите resmon.exe и перейдите к Network -> Listening Port (также можно просмотреть в TaskManager)  введите описание изображения здесь


Вариант 2

PowerShell

Get-Process -Id (Get-NetTCPConnection -LocalPort portNumber).OwningProcess

cmd

 C:\> netstat -a -b

(Добавьте -n, ​​чтобы он не пытался разрешить имена хостов, что сделает его намного быстрее.)

-a Отображает все подключения и порты прослушивания.

-b Отображает исполняемый файл, участвующий в создании каждого соединения или порта прослушивания. В некоторых случаях в хорошо известных исполняемых файлах размещается несколько независимых компонентов, и в этих случаях отображается последовательность компонентов, участвующих в создании соединения или порта прослушивания. В этом случае имя исполняемого файла находится в [] внизу, вверху - компонент, который он вызвал, и так далее, пока не будет достигнут TCP / IP. Обратите внимание, что эта опция может занять много времени и не сработает, если у вас нет достаточных разрешений.

-n Отображает адреса и номера портов в числовой форме.

-o Отображает идентификатор процесса-владельца, связанный с каждым подключением.

person Patel Romil    schedule 23.03.2019
comment
без двоеточия у меня работал netstat -ano | findstr ‹yourPortNumber› ' - person Bharathiraja; 24.12.2020

Я обнаружил, что ответ PatelRomil не сработал для меня. Я обнаружил это, запустив:

netstat -a -o -n

И получение PID для порта, а затем запуск:

taskkill /F /PID [PID]

Работал у меня. Замените [PID] значением в таблице из предыдущей команды.

person JackU    schedule 04.07.2019
comment
Привет @JackU, дайте мне знать, какой вариант вам не подходит - person Patel Romil; 05.07.2019
comment
@PatelRomil Привет, Option 1: В моих обстоятельствах не удалось убить процесс из IDE. Option 2: Также невозможно, поскольку порт использовали внешние приложения. Option 3: Получение ошибки при использовании CMD findstr is not recognized as an internal pr external command. Я понимаю, что ваш Option 3 и мой ответ очень похожи, за исключением способа найти PID, который я не смог сделать после вашего ответа. Я не сомневаюсь, что в большинстве случаев ваш ответ будет решением. Варианты, основанные на порядке перед редактированием. - person JackU; 05.07.2019