Maven Eclipse Debug "JDWP Transport dt_socket не удалось инициализировать, TRANSPORT_INIT (510)"
Я пытаюсь отлаживать тесты Maven в Eclipse. Когда я запускаю тесты с опцией maven maven.surefire.debug, я получаю эту ошибку:
ERROR: transport error 202: bind failed: Address already in use
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690]
/bin/sh: line 1: 27500 Abort trap
Это то же самое, когда я пытался запустить debug в моей оболочке.
Я попытался добавить параметр maven forkMode = never, и я получаю еще одну ошибку с артефактом сварного шва, который у меня отсутствует без опции maven.surefire.debug:
Error loading Weld bootstrap, check that Weld is on the classpath
Однако Weld находится в моем пути к классам.
Любые идеи?
Ответы
Ответ 1
Чтобы убить процесс, прослушивающий порт:
Эта команда должна отображать процессы, прослушивающие все порты:
netstat -ano
Опция -o
отобразит идентификатор процесса.
Если вы используете систему * nix, вы можете немного уточнить:
netstat -ano | grep <badport>
Когда у вас есть идентификатор процесса, вы можете завершить его с помощью:
Окна:
- Откройте диспетчер задач, добавьте столбец PID с помощью View > Select Columns > PID
- Найдите процесс и щелкните его правой кнопкой мыши, чтобы его убить.
Другие:
kill <PID>
Ответ 2
Перейдите на вкладку Debug configuration
→ Remote Java Application
→ Connect
, проверьте Allow termination of remote JVM
.
Затем, когда вы собираетесь перезапустить сервер /maven, перейдите к Debug perspective
и нажмите кнопку read / stop
.....
Ответ 3
Вопрос давно задан, но в последнее время у меня была такая же проблема.
Надеюсь, что это поможет
Ответ 4
Чтобы добавить... У меня была аналогичная проблема на прошлой неделе, когда отладка с использованием eclipse была сделана невозможной.
FATAL ERROR in native method: JDWP No transports initialized,
jvmtiError=AGENT_ERROR_TRANSPORT_LOAD(196)
ERROR: transport library not found: dt_socket
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_LOAD(509)
JDWP exit error AGENT_ERROR_TRANSPORT_LOAD(196): No transports initialized [../../../src/share/back/debugInit.c:690]
К сожалению, не решение, которое я могу найти в Интернете, было полезно.
Проблема оказалась в том, что каким-то образом брандмауэр удалил все DLL файлы в моем JRE-bin... (так что dt_socket.dll полностью отсутствует).
Помогла переустановка всей JRE.
Ответ 5
Решение для меня заключалось в удалении точек останова проекта! Если у вас много ветвей и недавно изменилось, иногда затмение потеряло некоторые точки останова.