Удаленная отладка Jetty (без mvn и плагинов)
-
23-08-2019 - |
Вопрос
Прошлый сценарий
- Работайте с Tomcat и начните Режим отладки и Удаленная отладка с Эклипсом.
- Определите порт и подключитесь к eclipse через этот отладочный/удаленный порт.
- Используйте для отладки серверов на других хостах/серверах.
Сценарий сегодня
Теперь я использую Пристань и я пытался сделать то же самое, но безуспешно, может ли кто-нибудь мне в этом помочь?
Я не использовал Maven и не хотел запускать Jetty внутри своего Eclipse.
Среда:
Windows XP
Ява В.5
Джетти В.6.1.15
Ссылки:
http://docs.codehaus.org/display/JETTY/Debugging
Мне это не помогло!
http://docs.codehaus.org/display/JETTY/Debugging+Jetty+with+Eclipse
http://neelzone.wordpress.com/2007/06/18/jetty-and-eclipse-integration
Это для начала внутри Затмение
Решение
Вот что мы добавляем в командную строку JBoss во время разработки:
-Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
Затем запускаем удаленную отладку eclipse и подключение к этому порту.
Обновлять:
Чтобы запустить из jar (автономно), выполните следующие действия:
java -Xdebug -Xrunjdwp:transport=dt_socket,address=8585,server=y,suspend=n -jar start.jar
Другие советы
Для удаленной отладки вы должны использовать JPDA.Есть что-то вроде обучающей статьи по этому поводу. здесь.
Короче говоря, запустите свою JVM с аргументом:
-agentlib:jdwp=transport=dt_socket,server=y,address=8000,suspend=n
и вы можете подключиться к базовой JVM, прослушивающей порт 8000, через стандартный отладчик Eclipse.
Если вы будете использовать мвн причал: беги однажды тебе придется
export MAVEN_OPTS="-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,address=4000,server=y,suspend=n"
добавление -Xdebug ...
не работает
Использование параметра командной строки JVM «agentlib» перед «start.jar» у меня не сработало, но это работает:
Как разрешить Eclipse удаленно отлаживать #Jetty (#JPDA #agentlib:jdwp) на порту 8000
Вам нужно создать файл, $JETTY_BASE/start.ini (Не менять $JETTY_HOME/start.ini) и вставьте в него следующие две строки:
- --exec
- -Agentlib:jdwp=transport=dt_socket,адрес=localhost:8000,server=y,suspend=n