Несколько портов (8005, 8080, 8009), необходимых для сервера Tomcat на локальном хосте, уже используются - PullRequest
243 голосов
/ 21 февраля 2011

При попытке запустить простую программу JSP на Tomcat в Eclipse я получаю следующую ошибку.

Несколько портов (8005, 8080, 8009), необходимых для сервера Tomcat v6.0 на локальном хосте, уже используются. Возможно, сервер уже запущен в другом процессе, или системный процесс может использовать порт. Чтобы запустить этот сервер, вам нужно остановить другой процесс или изменить номер (а) порта.

Как это вызвано и как я могу решить?

Ответы [ 32 ]

4 голосов
/ 19 ноября 2015

В Windows используйте команду для остановки уже запущенного экземпляра tomcat и попробуйте запустить его снова в eclipse, это может сработать.

net stop tomcat7 

Или вы можете изменить порт в XML-файле сервера , если вы просто хотите работать на некоторых других портах.

4 голосов
/ 01 октября 2014

Простой способ решить вашу проблему:

Возможно, сервер уже запущен в другом процессе или системный процесс использует порт. Чтобы убить этот порт, сделайте следующее:

1) Загрузить TCPView (только 285 КБ) по следующей ссылке.

http://technet.microsoft.com/en-in/sysinternals/bb897437.aspx

2) Извлеките папку и запустите Приложение TCPView .

3) Щелкните правой кнопкой мыши по java.exe (поскольку 8009,8005 портов обычно используются процессом Java) и выберите параметр Завершить процесс .

это легко остановит другой процесс ..

ПРИМЕЧАНИЕ : Запуск TOMCATPATH ​​/ bin / shutdown.bat может не завершить работу Tomcat, если в нем содержится какой-либо демон или неуправляемый потоки. В таких случаях TCPView работает без проблем.

2 голосов
/ 16 августа 2014

Иногда, если порты не освобождаются даже после попытки shutdown.bat, что предложено @BalusC, вы можете прервать процесс javaw.Выполните следующие действия:

  1. Нажмите «Пуск» и откройте «Windows powershell»
  2. Щелкните правой кнопкой мыши перед открытием и выберите «Запуск от имени администратора»
  3. Enterкоманда пс.Вы можете увидеть изображение следующим образом: Powershell showing current proesses running

  4. См. Номер процесса "javaw". Номер процесса - самый правый номер в столбцах, которые я выделил на изображенииномер процесса челюсти например.

  5. Введите команду kill.javaw убит, и теперь вы должны иметь возможность запускать программу.

2 голосов
/ 09 февраля 2012

Если вы работаете в Java EE в Eclipse и пытаетесь запустить Tomcat Server в Eclipse в режиме отладки, то вы получите такие ошибки.Вы должны переключиться на предполагаемую отладку в Eclipse.Я решил свою проблему следующим образом.

2 голосов
/ 29 декабря 2016

Для пользователей Windows:

Перейти к диспетчеру задач напрямую с помощью комбинации клавиш CTRL + SHIFT + ESC.

Убить процессы «java.exe», щелкнув правой кнопкой мыши и выбрав «Завершить задачу».

2 голосов
/ 16 мая 2016

Вот еще один вариант, чтобы попытаться, если ни одно из указанных выше действий не помогло. Возможно, вы используете Eclipse с общего диска (например, H:) .Если это так, переместите / скопируйте весь каталог Eclipse в C: и попробуйте снова.

Мой Eclipse не может ни открыть порты для сервера Tomcat (с указанной выше ошибкой), ни даже подключиться к Интернету.Я также попробовал другой плагин Tomcat (Sysdeo), который тоже не смог открыть порты.

Вот варианты, которые я пробовал:

Проверка и уничтожение других экземпляров Tomcat

  • В командной строке netstat -ano и проверьте, не используют ли другие процессы конфликтующие порты.
  • Найдите PID и уничтожьте его
  • Попробуйте запустить сервер еще раз.

Изменение портов Tomcat в Eclipse

  • На вкладке Eclipse Server дважды щелкните экземпляр Tomcat.Откроется вкладка конфигурации.
  • В разделе «Порты» измените номера портов.(например, 18080).

Убить java.exe и javaw

См. мой другой ответ для Eclipse, не подключенного к Интернету (https://stackoverflow.com/a/37246087/4212710).

1 голос
/ 28 января 2014

Самое простое исправление, которое работает для меня, - это удаление моих текущих развернутых веб-приложений из tomcat через вкладку «Сервер». Как только я уберу их, проблема исчезнет. Просто повторно разверните проект, выбрав «Запуск от имени»> «Выполнить на сервере».

1 голос
/ 21 августа 2018

Я проверил все ответы, но informing only to kill PID.

В случае, если у вас есть доступ к терминалу, общий для всех , это не поможет или , возможно, у вас нет разрешения убивать PID .

В этом случае вы можете сделать следующее:

Double click on server

Go to Overview and change ports in Ports как это:

enter image description here

1 голос
/ 01 января 2018

Если вышеуказанная проблема возникает в ОС Windows 7 или 10, проблема возникает из-за того, что Tomcat работает как служба Windows. Чтобы остановить запуск Tomcat в качестве служб Windows, откройте панель управления Windows. Найдите сервис «Apache Tomcat» и остановите его. Другой способ - завершить процесс, запущенный на порте 8080, с помощью cmd.

Откройте cmd, запустив его от имени администратора.

  1. C: \ users \ username> netstat -o -n -a | findstr 0.0: 8080
  2. TCP 0.0.0.0:8080 0.0.0.0:0 СЛУШАТЬ 2160.
  3. Указанный выше 2160 является идентификатором процесса, выполняющегося на порте 8080, и завершает этот процесс с помощью следующей команды
    C: \ users \ username> taskkill / F / PID 2160
  4. Зайдите в IDE и запустите Сервер, он будет работать
1 голос
/ 15 июня 2018

Это может быть из-за того, что вы неправильно останавливаете службу tomcat. Для этого Откройте диспетчер задач , там вы можете увидеть javaw.exe сервис. Сначала остановите эту услугу. Теперь перезагрузите ваш кот, он работает нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...