2012-01-13 18 views
7

Próbuję debugować kod, który zbudowałem ze źródła. Rozpoczynamy od opakowania z Tanuki.Debuger zatrzymuje się tylko w punktach przerwania, nie "przekroczy"

Jestem debugowania wewnątrz pomysł IntelliJ, ale nie jestem pewien, że to jest problem.

Debugger poprawnie zatrzymuje się na wszystkich liniach, na których umieściłem punkt przerwania, ale nigdy więcej, więc F8, "krok po kroku" nie działa. Bardzo męczące, bo muszę wstawiać punkty przerwania wszędzie :)

Czy robię coś nie tak?

+0

Nie ma czegoś takiego jak "zatrzymaj się" w AFAIK. Czy nie masz na myśli "krok po kroku"? (i oczywiście nie zatrzyma się tam ...) –

+3

Nie ma czegoś takiego jak brzydko :) Przepraszam. Tak, miałem na myśli "krok do przodu" i zmieniłem go. "krok po kroku" zwykle przenosi cię do następnego wiersza, który ma zostać wykonany, ale przechodzi przez wywołania metod, zamiast "wkroczyć" do kroków, które przechodzą do metod (jeśli jest wywołanie metody w bieżącej linii) –

+0

Dlaczego wspomniałeś opakowanie przez Tanuki? Czy to coś, co modyfikuje IntelliJ? Czy próbowałeś debuggera w małym projekcie? – toto2

Odpowiedz

2

Jak budujesz projekt? Jeśli tworzysz go za pomocą Anta lub jakiegoś innego narzędzia, upewnij się, że kompilacja jest wykonywana z włączonymi informacjami debugowania (debug = true dla zadania javac Ant). Obfuskacja i oprzyrządowanie bajtowe podczas kompilacji może również wpływać na możliwość debugowania. Uruchomienie w ramach niestandardowej maszyny JVM może również spowodować taki problem.

Podczas przeprowadzania zdalnego debugowania, upewnij się, że proces docelowy jest uruchamiany z poprawnymi opcjami JVM sugerowanymi w konfiguracji IntelliJ IDEA Remote debug. Twoja konfiguracja opakowania może je przekazać niepoprawnie.

+0

Jeśli nie został on zbudowany z debugiem = true, czy byłby to czy możliwe jest zatrzymanie debuggera w punktach przerwania? –

+0

Tak, zatrzymywanie na punktach przerwania działa nawet bez informacji debugowania. Stepping powinien również działać, ale zaleca się upewnić, że jest włączony. – CrazyCoder

+0

Sprawdziłem i debugowanie jest włączone w pliku build.xml Sprawdziłem również opcje JVM i są one identyczne. –

1

Upewnij się, że nie masz innego słoika w ścieżce klas (innej niż projekt) z tymi samymi klasami. Możesz przechodzić przez skompilowane klasy i "breakpointing" w źródłach.

+0

To jest dobra odpowiedź i była dokładna w przypadku symptomu w moim przypadku. W jakiś sposób dołączyłem do jednego z moich słoików projektów w ścieżce klas, a także samego źródła projektu. – markdsievers

0

To zadziałało dla mnie: http://devnet.jetbrains.com/thread/267022. Zasadniczo jest inna biblioteka w ścieżce klasowej, myląc debuggera. Po prostu dowiedz się, która to biblioteka, wkraczając podczas debugowania. Następnie znajdź go na projekcie i usuń.

W moim przypadku był to automatycznie wygenerowany plik, który spowodował zamieszanie.

0

przydarzyło mi się również na Eclipse (Mars).

Restart zaćmienia rozwiązać go ... takie proste ...

0

również w obliczu tego samego problem.Below sztuczka pracował dla mnie:

Usuń ustawienia Intellij użytkownika systemu Windows: C : \ Users {nazwa użytkownika} .IntelliJIdea14 To uruchomi ponownie Intellij od samego początku.

0

Cześć Miałem również takie samo zachowanie i mam to naprawić poprzez zainstalowanie najnowszej IntelliJ po usunięciu/zmienić nazwy folderów znajdujących się w tych lokalizacjach https://intellij-support.jetbrains.com/hc/articles/206544519

musiałem delet wszystkie wersje I wcześniej zainstalowane. Po prostu daj temu szansę.

Powiązane problemy