Каков наиболее эффективный / автоматизированный способ удаленной отладки SOA-приложения, работающего на виртуальной машине Linux, с рабочего стола Windows через IntelliJ IDEA? - PullRequest
0 голосов
/ 27 июня 2019

введите описание изображения здесь enter image description here

Я хочу создать и выполнить удаленную отладку Java-приложения CDI на основе SOA, работающего на виртуальной машине Linux, с рабочего стола Windows с помощью IntelliJ Idea. Каков наиболее эффективный способ сделать это, чтобы избавить меня от ручной передачи (sftp) приложения, настройки удаленной отладки и т. Д.?

Я не хочу выходить из своей среды IDE, но хотел бы отладить приложение на удаленной машине, неоднократно изменяя приложение. Я хотел бы видеть результаты в окне консоли IDE / веб-браузере.

Я использовал опцию удаленной отладки в Intellij IDE, в опции конфигурации run / debug я использовал «Прослушивание удаленной JVM» и запускаю отладку в IntellijIDE.

Затем я запускаю следующую команду в VM Linux:

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005  com.intel.podm.rest.RequestValidationFilter


enter image description here В Intellij IDE аргументы командной строки динамически обновляются до

-agentlib: JDWP = транспорт = транспорт по сокетам, сервер = п, адрес = РАБОЧЕГО-52V2CBR: 5005, приостановить = у, onthrow =, onuncaught =

1 Ответ

0 голосов
/ 15 июля 2019

Это исправлено открытием SSH в Linux и удаленной отладкой в ​​Intellij, а также изменением номера порта в сценарии standalone.sh, поскольку проект основан на сервере wildfly, собранном в среде сборки gradle. Шаг 1: открыть удаленную отладку шаг 2: ssh targetMachine@10.10.10.10 –L 8888: 127.0.0.1: 8787

Если ваше приложение находится на другом компьютере, попробуйте создать SSH-туннель, например: ssh targetMachine@10.10.10.10 –L 8888: 127.0.0.1: 8787 Где targetMachine@10.10.10.10 - целевой пользователь и адрес. 8888 - это локальный порт, где находится IDE 8787 - это порт debbuger в targetMachine (вы можете проверить этот порт в скрипте standalone.sh)

...