Spring Загрузите приложение в eclipse, соединитель Tomcat, настроенный для прослушивания на порту XXXX, не смог запустить
Я разрабатываю API REST с использованием Spring Framework
Сначала я не смог запустить свое приложение из-за той же проблемы. Порт 8080 на моем компьютере занят. Затем я обнаружил, что одной из альтернатив для решения этой проблемы является создание файла application.properties
папке src/main/resources
. Это то, что я сделал, и настроил сервер на прослушивание порта 8090. Это сработало, но только в первый раз, теперь я получаю то же исключение, когда пытаюсь запустить приложение во второй раз.
Description:
The Tomcat connector configured to listen on port 8090 failed to start. The port may already be in use or the connector may be misconfigured.
Action:
Verify the connector configuration, identify and stop any process that listening on port 8090, or configure this application to listen on another port.
Насколько я знаю, эта среда использует встроенный экземпляр Apache Tomcat для развертывания каждого приложения.
Я предполагаю, что сервер не перезагружается во второй раз, когда я пытаюсь запустить приложение, поэтому в выходных данных говорится: "Возможно, порт уже используется или неправильно настроен разъем"
Итак, более конкретные вопросы могут быть, как я могу управлять встроенным экземпляром apache tomcat вручную или программно?
Я также дважды изменил порт в файле application.properties
. Работает нормально, но опять же только в первый раз. Как вы можете себе представить, я не могу делать то же самое каждый раз, когда приложение будет запущено.
Ответы
Ответ 1
На консоли, глядя на верхнюю правую сторону диалогового окна, вы увидите красную кнопку, похожую на зуммер. Чтобы остановить загрузочное приложение spring правильно, вы просто запустили его, нажмите и нажмите эту кнопку "красный", и ваша проблема будет решена. Надеюсь, это поможет!
Ответ 2
-
Найдите идентификатор процесса (PID) для порта (например: 8080)
В Windows:
netstat -ao | find "8080"
Другие платформы, кроме Windows:
lsof -i:8080
-
Убейте идентификатор процесса, который вы нашли (например: 20712)
В Windows:
Taskkill /PID 20712 /F
Другие платформы, кроме Windows:
kill -9 20712 or kill 20712
Ответ 3
Еще один простой способ решить эту ошибку - щелкнуть правой кнопкой мыши в консоли и нажать "Завершить/Отключить все". После этого запустите приложение, оно должно работать нормально.
Ответ 4
Это потому, что вы не останавливаете свое приложение, прежде чем запускать его в другой раз, поэтому он говорит, что порт уже используется.
Вы всегда должны останавливать приложение перед его повторным запуском, иначе вы столкнетесь с проблемами конфликта портов.
В зависимости от вашей платформы, если вы запускаете ее на окнах, вы можете использовать netstat -anp | find "port number"
, или если вы используете ее на linux, вы можете использовать netstat -ntpl | grep "port number"
или, если используете mac, используйте lsof -n -iTCP:"port number"
.
Ответ 5
Я уже сталкиваюсь с этой проблемой, когда я запускаю в первый раз, а затем снова хочу запустить другой проект, который я получил:
The Tomcat connector configured to listen on port 8088 failed to start. The port may already be in use or the connector may be misconfigured.
Action:
Verify the connector configuration, identify and stop any process that listening on port 8088, or configure this application to listen on another port.
И наконец я получил решение для этого, которое дано на скриншоте ниже:
![enter image description here]()
Щелкните правой кнопкой мыши на вкладке " Консоль " → и выберите " Завершить/отключить все". А теперь попробуйте запустить свой код.
Примечание. Не забудьте остановить сервер перед запуском.
Ответ 6
Найдите процесс и завершите его. В Windows выполните Control + Alt + Delete, а затем найдите процесс "Java (TM) Platform SE Binary" на вкладке "Процессы". Например: ![enter image description here]()
В Ubuntu вы можете использовать "ps aux | grep java", чтобы найти процесс, и "kill -9 PID_NUMBER", чтобы убить процесс.
ИЛИ ЖЕ
Если вы используете загрузочное приложение Spring, перейдите в application.properties и добавьте следующее:
server.port = 8081
Ответ 7
Если ваше приложение запущено в httpS, убедитесь, что вы указали правильные значения в следующих свойствах:
server.ssl.key-store-password=
server.ssl.key-alias=
Я получил ту же ошибку, когда я поставил неправильные значения здесь
Ответ 8
- проверьте занятый порт: netstat -ntlp
- убить этот порт: kill -9 xxxx
Ответ 9
В Windows:
Чтобы начать, откройте командную строку, нажав Пуск, а затем введите cmd. В командной строке, вперёд и введите следующую команду:
netstat -a -n -o
В приведенной выше команде параметр -o - это то, что добавляет PID в конец таблицы. Нажмите ввод, и вы должны увидеть что-то вроде этого:
![enter image description here]()
Теперь, чтобы увидеть имя процесса, использующего этот порт, перейдите в диспетчер задач, нажав CTRL + SHIFT + ESC, а затем перейдите на вкладку Процесс. В Windows 10 вы должны нажать на вкладку Details.
По умолчанию диспетчер задач не отображает идентификатор процесса, поэтому вам нужно нажать "Просмотр", а затем "Выбрать столбцы".
Вам также может понадобиться изучить службы, работающие в фоновом режиме. Для этого щелкните правой кнопкой мыши и выберите открытые сервисы, как показано ниже:
![enter image description here]()
Надеюсь, поможет :)
Ответ 10
эту проблему можно решить двумя способами:
- Убить приложение, запущенное на 8080
netstat -ao | find "8080"
Taskkill /PID 1342 /F
- изменить порт сервера Spring в файле application.properties file
server.port=8081
Ответ 11
Есть два варианта, чтобы справиться/избежать этой ситуации.
-
Перед повторным запуском приложения просто разорвите предыдущее соединение.
-
Open the console --> right click --> terminate all.
-
Если вы забыли выполнить упоминание действия на шаге 1, тогда
- Определите порт, используемый вашим приложением, вы можете увидеть его трассировку стека в окне консоли
- Определите идентификатор процесса, связанный с портом, выполнив команду netstat -aon в cmd
- Убейте этот процесс и перезапустите приложение.
Ответ 12
если вам это удобно и вы не хотите использовать командную строку, вы можете перезагрузить компьютер, это поможет!
Ответ 13
Самый простой способ решить эту проблему - изменить порт в файле application.properties ;
введите описание изображения здесь
server.port = 8081
Ответ 14
![right click on console and stop]()
щелкните правой кнопкой мыши на консоли и завершите. или нажмите на стоп
![enter image description here]()