Czy możesz debugować cel maven za pomocą Intellij IDEA? Wiem, że mogę kliknąć prawym przyciskiem myszy i uruchomić debugowanie . Jednak wtyczka maven nie pojawia się na mojej liście bibliotek zewnętrznych , więc nie mogę wejść do kodu i ustawić punktu przerwania. W ten sposób debugowanie przebiega przez cele bez zatrzymywania się, tak jak robi to Run .
Używam OS X 10.8 i IDEA 12.0.2.
EDYCJA: Cel
Napisałem niestandardowy specRunner dla https://github.com/searls/jasmine-maven-plugin - Jednak $ specs $ pozostaje puste. Więc próbuję zobaczyć, które pliki są faktycznie załadowane.
intellij-idea
rweng
źródło
źródło
Odpowiedzi:
Domyśliłam się:
mvnDebug
zamiastmvn
. Na przykładmvnDebug clean
Remote
konfigurację.źródło
mvn test -Dtest=com.example.MyTest
(mój przypadek testowy kończy się niepowodzeniem tylko wtedy, gdy jest uruchomiony przy użyciu maven) - punkty przerwania IDEA są w tym przypadku ignorowane, wygląda na to ... :(Bardzo łatwe. Używam Intellj Idea 15.0.4
Oto zrzut ekranu:
źródło
Stare pytanie, ale miałem taką samą potrzebę i trochę mi zajęło, zanim to zadziałało. Mam nadzieję, że może komuś pomóc.
Do debugowania testów użyj:
lub
Gdy wykonanie zatrzymuje się i nasłuchuje gniazda pod adresem 5005 (domyślnie), uruchamiasz skonfigurowany zdalny debugger.
Jak to skonfigurować:
Uruchom -> Edytuj konfiguracje -> Transport zdalny: tryb debugera gniazda: Dołącz port: 5005 (domyślnie)
-> Zapisz.
źródło
Najłatwiejszym sposobem debugowania celu Maven TYLKO w IntelliJ jest utworzenie zwykłego celu maven i przekazanie tych opcji VM w zakładce runner:
Gdzie 8000 to numer portu do zdalnego debugowania.
Następnie utwórz nową konfigurację zdalną z portem 8000. Uruchom tę konfigurację po uruchomieniu celu Maven.
źródło
Myślę, że najłatwiejszym rozwiązaniem jest tymczasowe dodanie wtyczki maven jako zależności. Gdy to zrobisz, IntelliJ potraktuje to tak jak każdą inną zależność i możesz ustawić punkty przerwania w zwykły sposób.
źródło
Możesz odnieść się do powyższej odpowiedzi lub po prostu dodać tę wtyczkę do pom.xml
I biegnij maven cel z
mvn
zamiastmvnDebug
. Na przykładmvn spring-boot:run
W IDEA dodaj konfigurację zdalną. W obszarze Ustawienia ustaw Transport: Socket, Debugger Mode: Attach, Host: localhost, Port: 8000 (domyślny port mvnDebug).
Uruchom jako debugowanie w IDEA, ilekroć chcesz debugować kod.
źródło
Ponieważ pracujesz z Intellij, jest tam już wbudowany debugger i nie musisz koniecznie używać mvnDebug, który jest narzędziem wiersza poleceń. Sprawdź ten samouczek: Jak debugować aplikacje Maven w Intellij IDEA .
Samouczek wykorzystuje wtyczkę Maven Exec i umożliwia debugowanie aplikacji bez konieczności używania wiersza poleceń lub
MvnDebug
. Warto tutaj podzielić się przemyśleniami.źródło
exec:java
. Jeśli jednak chcesz podać dodatkowe argumenty dla JVM, musisz użyćexec:exec
(patrz stackoverflow.com/questions/7305090/… ), którego nie można debugować w ten sposób.Odpowiedź @Peter Szanto działa dla mnie, ale nie lubię zepsuć kodu źródłowego.
I nie mogę sprawić, żeby to
MvnDebug
zadziałało.Więc spróbuję w inny sposób, dodaję źródło wtyczki jako moduł IDEA .
Oto krok szczegółowy:
Sklonuj źródło wtyczki jako niezależny projekt.
W swoim projekcie przejdź do
File -> New -> Module from Exist Sources
i dodaj projekt wtyczki sklonowany w kroku 1.Teraz możesz otworzyć kod źródłowy wtyczki i ustawić punkt przerwania.
Uruchom swój cel maven w trybie debugowania, powinien zatrzymać się w punkcie przerwania.
źródło