Мое Spring Boot
веб-приложение работает нормально, и я хотел бы отладить его через Eclipse.
Итак, какой порт мне следует прослушивать при запуске отладчика удаленного приложения Java? И есть ли в моем веб-приложении параметр, который я должен установить для включения отладки?
Ответы:
Почему бы вам просто не щелкнуть правой кнопкой мыши по
main()
методу и выбрать"Debug As... Java Application"
?источник
В Spring Boot Reference есть раздел 19.2, в котором рассказывается о запуске приложения с включенной поддержкой удаленной отладки.
После запуска приложения просто добавьте эту конфигурацию удаленного Java-приложения в конфигурацию Run / Debug, выберите порт / адрес, который вы определили при запуске приложения, и затем вы можете отлаживать.
источник
java -agentlib:jdwp=help
состояние запуска «Старый интерфейс -Xrunjdwp все еще можно использовать, но он будет удален в следующем выпуске». Вместо этого используйте-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n
Более простое решение:
Вместо того, чтобы вводить
mvn spring-boot:run
, просто введитеmvnDebug spring-boot:run
Вам все равно нужно будет подключить отладчик в Eclipse, создав новую конфигурацию отладки для «Удаленного Java-приложения» на соответствующем порту.
источник
Мне не нужно было настраивать удаленную отладку, чтобы это работало, я использовал Maven.
spring-boot::run
.NB. Если в вашей среде IDE возникают проблемы с поиском исходного кода вашего проекта при построчной отладке, взгляните на этот ответ SO, чтобы узнать, как вручную прикрепить исходный код к приложению отладки.
Надеюсь, это кому-то поможет!
источник
Как отлаживать удаленное промежуточное или производственное приложение Spring Boot
На стороне сервера
Предположим, вы успешно следовали руководству Spring Boot по настройке приложения Spring Boot как службы . Артефакт вашего приложения находится в нем
/srv/my-app/my-app.war
вместе с файлом конфигурации/srv/my-app/my-app.conf
:Когда вы перезапускаете приложение Spring Boot с помощью
sudo service my-app restart
, в его файле журнала, расположенном по адресу,/var/log/my-app.log
должна быть строка с надписьюListening for transport dt_socket at address: 8002
.Клиентская сторона (машина разработчика)
Открытие SSH переадресации портов туннель к серверу:
ssh -L 8002:localhost:8002 myusername@staging.example.com
. Продолжайте сеанс SSH.В Eclipse на панели инструментов выберите « Выполнить» -> « Конфигурации отладки» -> выберите « Удаленное приложение Java» -> нажмите кнопку « Создать» -> выберите « Стандартный тип подключения» ( подключение к сокету) , «Хост localhost» и «Порт 8002» (или все, что у вас есть. настроен в шагах ранее). Нажмите « Применить», а затем « Отладка» .
Теперь отладчик Eclipse должен подключиться к удаленному серверу. Переключение в перспективу отладки должно показать подключенную JVM и ее потоки. Точки останова должны срабатывать, как только они запускаются удаленно.
источник
Выполните команду ниже, где
pom.xml
находится:И запустите удаленное Java-приложение с опцией отладки на порту
5005
источник
Spring Boot 2.0.3.RELEASE
.На мой взгляд, лучшее решение - добавить плагин в pom.xml, и вам не нужно постоянно делать что-либо еще:
источник
mvn clean install
запускает отладчик и сборка зависает. Было бы круто, еслиmvnDebug clean install
бы так делала только команда.источник
Right click on the spring boot project -> debug as -> spring boot App
. Установите точку отладки и вызовите приложение из клиента, например почтальона.источник
См. Http://java.dzone.com/articles/how-debug-remote-java-applicat, чтобы включить удаленную отладку. Если вы используете tomcat для запуска своего приложения, запустите tomcat с параметрами удаленной отладки или вы можете запустить tomcat с поддержкой JPDA, используя следующую команду.
Windows
* nix
это позволит удаленную отладку на порту 8000
источник
В eclipse или любой другой среде IDE просто щелкните правой кнопкой мыши основное приложение для загрузки Spring и выберите «Отладка как приложение Java».
источник
На этот вопрос уже дан ответ, но у меня также возникла такая же проблема для отладки Springboot + gradle + jHipster,
В основном приложение загрузки Spring может отлаживать и отлаживать щелчок правой кнопкой мыши, но когда вы используете gradle, имея некоторые дополнительные настройки параметров среды, отлаживать напрямую невозможно.
Чтобы решить эту проблему, Eclipse предоставил одну дополнительную функцию в виде удаленного Java-приложения.
с помощью этих функций вы можете отлаживать свое приложение.
Следуйте шагу ниже:
запустите приложение Gradle с помощью
./gradlew bootRun --debug-jvm
командыТеперь перейдите в eclipse -> щелкните правой кнопкой мыши по проекту и выберите Debug configuration -> Remote Java Application.
добавьте свой хост и порт как localhost и порт как 5005 (по умолчанию для отладки gradle, вы можете изменить его)
Обратитесь к более подробной информации и шагу.
источник
Щелкните правой кнопкой мыши файл основного класса Spring Boot Applications -> выберите параметры Debug As -> Выберите приложение Java
Теперь вы можете использовать точки останова для отладки приложения.
источник