2012-03-08 2 views
25

Когда я пытался запустить свой отладчик eclipse (для кода на стороне сервера), я получаю следующую ошибку: Не удалось подключиться к удаленной виртуальной машине. В соединении отказано.Eclipse: Не удалось подключиться к удаленной виртуальной машине. В соединении отказано.

В чем проблема? Я уже пробовал с большинством решений в Интернете, но ничто из этого не решило мою проблему. Может ли кто-нибудь помочь мне исправить это? Спасибо за помощь.

+0

Вы должны добавить командной строки, которую вы используете для запуска VM сервера, особенно параметров отладки. Также было бы полезно узнать о используемой ОС на стороне клиента и сервера. – Robert

+0

Вы действительно подключаетесь к удаленному серверу? Если это так, могут возникнуть проблемы с брандмауэром и т. Д. Если вы используете код сервера на своей собственной машине, тогда я не знаю. Я согласен w/@Robert, больше информации было бы полезно. – JHollanti

ответ

36

Какой сервер вы используете?

Как уже было сказано:

  1. В конфигурации отладки вы должны определить правильный порт вашего сервера (GF: 9009/Tomcat: 8000)
  2. Вы должны установить JVM свойство сервера для debug

для Glassfish:

Log in to admin-console > Configurations > server-config > JVM-Settings > check DEBUG checkbox > restart server 

Для Tomcat:

создать файл debug.bat/.sh (в зависимости от вашей операционной системы) в %TOMCAT_HOME%/bin каталоге и написать

set JPDA_ADDRESS=8000 
    set JPDA_TRANSPORT=dt_socket 
    catalina.bat jpda start 

в нем.

После того, как вы создали этот файл, запустите сервер, выполнив debug.bat/.sh.

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

Надеюсь, это помогло! Повеселись!

EDIT

Если вы работаете в Tomcat среде Win как сервис вы сделать не иметь catalina.bat файл в бен -directory вашей установки TOMCAT.
Чтобы установить сервер в отладочном режиме, пожалуйста, попробуйте следующее:

  1. Запуск опции конфигурации в меню Windows или запустить %catalina_home%/bin/tomcat6w.exe
  2. На вкладке Java, добавьте эту строку в Java:

опции: -Xrunjdwp: транспорт = транспорт по сокетам, адрес = 8000, сервер = у, приостановить = п

+0

Спасибо за ваш вклад! В моем файле batbot jboss два места у меня есть адрес сервера jpda, но я был изменен только в месте. Ваша точка снова сосредоточиться. Это решено! – Arung

+0

Я создал файл debug.bat в папке bin Tomcat7 и добавил set JPDA_ADDRESS = 8000 set JPDA_TRANSPORT = dt_socket catalina.bat jpda start Как запустить сервер, выполнив debug.bat? Когда я дважды нажимаю на него, он автоматически закрывается немедленно. –

+0

@GopakumarNG Правильно * ваша * оболочка должна автоматически закрыться после ее завершения, но она должна открыть новую, показывающую службу tomcat. Убедитесь, что в вашем * debug.bat * нет опечаток, особенно в части ** catalina.bat jpda start **. – SimonSez

3
  • Номер порта в конфигурации Eclipse и номер порта Ваше приложение может быть не таким.
  • Возможно, вы не запустили приложение с параметрами .

    Это простые проблемы, когда я столкнулся с ошибкой «Соединение отказался».

+1

спасибо, что ответ мне помог мне отлаживать без запуска приложения – Mateen

+0

У меня была ошибка конфигурации запуска, поэтому сервер закончился быстро, и виртуальная машина не подключалась. – Andrew

4

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

+0

А я запускал другой веб-сервер на 8000 –

1

Как сказал suat, в большинстве случаев отказ от подключения объясняется тем, что порт, который вы настроили, используется, или есть разница между количеством портов в вашей удаленной конфигурации отладки приложения в Eclipse, и номер порта, используемого в атрибуте адреса в

-Xrunjdwp:transport=dt_socket,address=1044,server=y,suspend=n. 

Проверьте эти вещи. Благодаря!

24

когда вы не удались подключиться к удаленному подключению VM отказали ошибку, перезагрузить затмение

+6

ИЛИ Перезагрузите свой сервер – Atul

+1

Это сработало для меня! –

+0

yep, я только что добавил настройки конфигурации, но это не сработало, пока я не перезапустил. –

4

Я сталкивался с такой же проблемой. Но я решил это, изменив номера портов на разные. Cheers.

0

Я столкнулся с этой проблемой, отлаживая версию фреймворка версии 2.x, оказалось, что сервер не был запущен, даже несмотря на то, что была выпущена команда запуска отладки воспроизведения. После первого запроса на веб-сервер, который заставил платформу воспроизведения действительно запустить приложение на порту 9000, я смог правильно подключиться к порту отладки 9999 из eclipse.

[info] play - Application started (Dev) 

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

1

Если вам необходимо отладить приложение работает на Tomcat, убедитесь, что ваш Tomcat-папку/bin/startup.bat (при использовании окна) содержит следующие строки:

set JPDA_TRANSPORT="dt_socket" 
set JPDA_ADDRESS=8000 

call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS% 
+0

вместо добавления повторяющихся ответов вы можете рассмотреть возможность дублирования дубликатов. – bummi

Смежные вопросы

 Смежные вопросы