Ответ 1
Простой способ:
1. Open the Debug As > .. dialogue box
2. In the goal text box, give
-DforkMode=never test
3. Run the debug project
Я использую maven/surefire/eclipse, чтобы написать код, а затем проверить/отладить его.
Стандартный способ сделать это - использовать свойство maven.surefire.debug maven. По умолчанию, когда это свойство включено, maven начинает прослушивать порт 5005, и я могу подключиться к отладочному процессу с помощью удаленного отладчика. Когда тест завершает удаленный отладчик, он отключается от сервера.
Этот процесс включает в себя два шага, когда выполняется в eclipse:
То, что я хотел бы достичь, - это уменьшить это:
Я обнаружил, что установка свойства maven.surefire.debug для некоторых параметров удаленной отладки изменит поведение удаленного отладки. Таким образом, когда я указываю i.e.
-Dmaven.surefire.debug = "- Xdebug -Xrunjdwp: transport = dt_socket, server = n, address = 5005"
тогда сборка попытается подключиться к моему процессу eclipse, прослушивая порт 5005. Таким образом, я инвертирую роли клиента/сервера по умолчанию для maven и eclipse.
Однако с этим подходом существует одна большая проблема. Это ничего мне не дает, так как после завершения сборки maven eclipse перестает слушать порт сервера. Это та часть, которую я не понимаю. Когда я подключаюсь как отладочный клиент от eclipse к, например, серверу WebLogic, он позволяет мне соединять/отключать свободно столько раз, сколько захочу.
Кто-нибудь знает, нормально ли это, или, может быть, мне нужно указать некоторые дополнительные параметры, чтобы облегчить отладку тестов maven?
Простой способ:
1. Open the Debug As > .. dialogue box
2. In the goal text box, give
-DforkMode=never test
3. Run the debug project
Бит поздно вносил вклад, но думал, что это стоит того.
В конфигурации отладки Eclipse создайте конфигурацию отладки "Maven build":
Цели = -Dmaven.surefire.debug test
Профили = myconfigprofile, weblogic
или для конкретного TestSuite:
Цели = -Dmaven.surefire.debug -Dtest = com.myorg.mypkg/Тест MyTestSuite.java
Профили = myconfigprofile, weblogic
N.B. Не помещайте реквизит в "аргументы JRE/jvm", поскольку это не кажется приостановленным
Создать дополнительную конфигурацию удаленного приложения Java:
Host = localhost
Порт = 5005
Запуск/отладка вашей сборки mvn остановится и будет прослушиваться по 5005 по умолчанию.
Запуск вашей конфигурации удаленного отладки будет прикреплен.См. также: http://maven.apache.org/plugins/maven-surefire-plugin/examples/debugging.html
Если вы используете m2eclipse, почему бы не просто щелкнуть правой кнопкой мыши, а затем Отладкa > Тест Maven?
если вы используете Maven 2.0.8+, тогда это будет очень просто,
Пожалуйста, обратитесь к моему ответу.