#java #eclipse #tomcat #remote-debugging
#java #eclipse #tomcat #удаленная отладка
Вопрос:
Я пытаюсь инициировать сеанс удаленной отладки на моем компьютере с помощью Eclipse amp; Tomcat. Мне удалось запустить tomcat (не через eclipse) со следующими параметрами:
set JPDA_TRANSPORT=dt_socket
set JPDA_ADDRESS=5050
cataline jpda start
Сервер запускается нормально, это результат:
Using CATALINA_BASE: "C:JavaTomcat"
Using CATALINA_HOME: "C:JavaTomcat"
Using CATALINA_TMPDIR: "C:JavaTomcattemp"
Using JRE_HOME: "C:Javajdk1.6.0_27"
Using CLASSPATH: ...
Listening for transport dt_socket at address: 5050
...
...
INFO: Server startup in 12502 ms
Теперь я открыл eclipse и загрузил соответствующий проект.
Я установил новую конфигурацию отладки, используя Remote Java Application
с localhost и правильным портом. однако, когда я запускаю его, я получаю это сообщение об ошибке:
Failed to connect to remote VM. Connection refused.
Connection refused: connect
Не могу понять, в чем проблема. все это локально внутри ПК, поэтому не должно быть никаких брандмауэров, может кто-нибудь что-нибудь придумать?
Комментарии:
1. это все еще может быть брандмауэр, попробуйте отключить его и посмотрите
2. нет, я проверил… это не брандмауэр…
3.
cataline jpda start
выглядит странно. Обычно это называетсяcatalina
. Вы уверены, что используете хороший скрипт?4. хорошо, если вы выполните «telnet localhost 5050», это сработает?
5. попробуйте запустить just
catalina jpda start
и подключиться к порту 8000. Без ваших собственных скриптов, переменных и т.д. Я надеюсь, что это сработает. Если да, продолжайте выяснять, почему ваш порт 5050 не работает.
Ответ №1:
Найдено решение. по-видимому, соединение было установлено, но Eclipse amp; Tomcat не показывают никаких уведомлений или статуса относительно него. Затем, когда вы снова инициируете соединение, вы получаете сообщение об ошибке, потому что вы уже подключены.
Я думаю, что небольшое уведомление либо от Eclipse, либо от Tomcat было бы неплохо.
Ответ №2:
Попробуйте добавить следующие параметры отладки непосредственно в запуск JVM, непосредственно изменив сценарий запуска catalina
-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5050
Ответ №3:
Могут возникнуть проблемы при несоответствии кода между eclipse и tomcat. Поэтому, когда оно совпадет, ошибка исчезнет
Ответ №4:
Вы можете настроить это в разделе «удаленное приложение Java» в конфигурации отладки. Для получения более подробной информации вы можете обратиться по этой ссылке