Адрес, уже используемый: JVM_Bind Java

Несколько раз каждый раз, когда я перезапускаю приложение, которое основано на Struts Java на Mysql и версии Jboss 4.05, я получаю ошибку как Адрес, уже используемый: JVM_Bind

Только зафиксируйте это, я знаю, должен перезапустить машину и попробовать еще раз, она будет работать. Еще Несколько раз я делаю Ctrl-Alt-Del и Остановку весь процесс, связанный с Java, несколько раз это также работает.

Но какова точная причина и как мы можем предотвратить эту проблему?

47
задан gmhk 5 May 2010 в 11:25
поделиться

5 ответов

Адрес уже используется: JVM_Bind

означает, что какое-то другое приложение уже прослушивает порт, который ваше текущее приложение пытается привязать.

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

в Linux вы можете найти pid приложения, используя,

netstat -tulpn
45
ответ дан 26 November 2019 в 19:36
поделиться

Я обычно сталкиваюсь с этим, когда порт, на котором сервер (я использую JBoss) уже используется

Обычные подозрения

  1. Apache Http Server => отключите службу при работе в Windows.
  2. IIS => остановить ISS с помощью
  3. Skype => да, я получил Skype, подключенный к порту 80

Чтобы изменить порт, к которому JBoss 4.2.x привязывается, перейдите по адресу:

"C: \ jboss4.2.2 \ server \ default \ deploy \ jboss-web.deployer \ server.xml "

здесь по умолчанию - экземпляр сервера измените порт здесь:

В приведенном выше примере порт привязан к 8080

13
ответ дан 26 November 2019 в 19:36
поделиться

Возможно ли, что MySql прослушивает тот же порт, что и JBoss?

В сообщении об ошибке указан номер порта - что-то вроде Адрес уже используется: JVM_Bind: 8080

Вы можете изменить порт в JBoss server.xml, чтобы проверить это.

3
ответ дан 26 November 2019 в 19:36
поделиться

Быстрый ответ о том, как это предотвратить, заключается в том, что вам, скорее всего, потребуется остановить JBoss перед его повторным запуском.

У вас должна быть возможность вызвать кнопку «Завершить» в представлении консоли, чтобы выключить сервер.

1
ответ дан 26 November 2019 в 19:36
поделиться

Эта ошибка означает, что вы пытаетесь создать новый ServerSocket на порту, который уже используется другим ServerSocket. Поэтому попробуйте заставить ваше приложение закрыть все известные вам сокеты и соединения и убедитесь, что ваше приложение полностью завершено. Также проверьте, нет ли другого процесса, запущенного вашей программой.

1
ответ дан 26 November 2019 в 19:36
поделиться
Другие вопросы по тегам:

Похожие вопросы: