Я пытаюсь сделать удаленную отладку с Maven и Eclipse. На удаленном компьютере я делаю mvnDebug spring-boot:run
, а на локальном компьютере в Eclipse я настроил конфигурацию отладки Remote Java Application с соответствующим IP-адресом хоста и портом и типом соединения как Стандартный (Socket Attach) .
На удаленной машине, перед попыткой соединения с Eclipse, я вижу только:
Preparing to execute Maven in debug mode
Listening for transport dt_socket at address: 8000
ss -aln
показывает что-то прослушивающее через порт 8000: users:(("java",pid=949917,fd=4))
. Как только я запускаю процесс отладки в Eclipse на локальном компьютере, на удаленном компьютере появляется обычный вывод Maven:
Apache Maven 3.6.3 (NON-CANONICAL_2019-11-27T20:26:29Z_root)
Maven home: /opt/maven
Java version: 1.8.0_242, vendor: Oracle Corporation, runtime: /usr/lib/jvm/java-8-openjdk/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "5.5.8-arch1-1", arch: "amd64", family: "unix"
[INFO] Scanning for projects...
...
, поэтому очевидно, что соединение установлено. Выход из Maven идентичен обычному запуску. Но Eclipse отображает Failed to connect to remote VM. Connection refused.
без дополнительной информации, и к настоящему времени на удаленном компьютере больше не прослушивается порт 8000.
Я понятия не имею, как это отладить, и конфигурация не может не может быть проще.
Содержимое сценария mvnDebug
:
MAVEN_DEBUG_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000"
echo Preparing to execute Maven in debug mode
env MAVEN_OPTS="$MAVEN_OPTS" MAVEN_DEBUG_OPTS="$MAVEN_DEBUG_OPTS" "`dirname "$0"`/mvn" "$@"
Будем благодарны за любые предложения или идеи.