2012-01-18 11 views
9

Eclipse Debugger nagle zatrzymuje się nie rzuca wszystko:Eclipse debugger zatrzymuje się samoczynnie bez Throwable

private void openChannelsListActivity() { 
    try{ 
     Intent gridListIntent=new Intent(); 
     // the pause is on the following line 
     gridListIntent.setClass(this,ChannelsListActivity.class); 
     startActivity(gridListIntent); 
    } 
    catch (Throwable e){ 
     ErrorMessage.outputMessageByName(
      "channels_list_activity_create",this, " While setting intent."); 
     finish(); 
    } 
} 

Stos jest:

DexFile.defineClass(String, ClassLoader, int, ProtectionDomain) line: not available [native method] 
DexFile.loadClassBinaryName(String, ClassLoader) line: 207 
PathClassLoader.findClass(String) line: 200 
PathClassLoader(ClassLoader).loadClass(String, boolean) line: 551 
PathClassLoader(ClassLoader).loadClass(String) line: 511  
PackVideo.openChannelsListActivity() line: 508 

Gdybym naciśnij CV, program przechodzi dalej bez żadnych problemów. Działanie zaczyna się OK, ale nie jest to normalne zachowanie i z pewnością oznacza, że ​​coś jest nie tak. Co to jest?

Problem nie polega na oczekiwaniu; czas od uruchomienia aplikacji do tego momentu wynosi około 2 sekund.

To nie jest niezamierzony wyjątek; Wyłączyłem je w preferencjach debuggera.

To nie jest ukryty punkt przerwania, wyczyściłem je wszystkie.

Odpowiedz

4

I znowu był to błąd Eclipse. Po pewnym czasie wkroczenia i wyjścia z Eclipse zachowanie to zniknęło.

Co do czyszczenia punktów przerwania, używam go zawsze, gdy występują problemy z punktami przerwania, przez dwa lata. Tym razem problem był głębszy - musiałem wielokrotnie wchodzić i wychodzić z Eclipse - nie liczyłem, myślę, że było ich około pięciu. A po ostatnim problem zniknął. Bez ponownego uruchomienia systemu, bez ręcznych zmian w obszarze roboczym lub folderach Eclipse. Myślę, że jest to związane z intelektualnym zachowaniem debuggera, kiedy zatrzymuje się przed możliwą przerwą. Debugger Eclipse jest błędny iw tej, bardzo skomplikowanej części może być jeszcze bardziej błędny.

+1

Interesujące. Na początku myślałem, że to także błąd Eclipse, ale teraz okazało się, że rzeczywiście miałem punkt przerwania znajdujący się na klasie, która nie wygląda jak punkt przerwania, ale zamiast tego symbol 'C'. Właśnie ten punkt przełomowy został trafiony i nie rozpoznałem go. Właśnie dlatego rozwiązanie JeffGa działało dla mnie. Czy jesteś pewien, że rozwiązanie JeffG nie działało dla ciebie w twoim scenariuszu? –

+0

Co do czyszczenia punktów przerwania, używam go zawsze, gdy występują problemy z punktami przerwania, przez dwa lata. Tym razem problem był głębszy - musiałem wielokrotnie wchodzić i wychodzić z Eclipse - nie liczyłem, myślę, że było ich około pięciu. A po ostatnim problem zniknął. Bez ponownego uruchomienia systemu, bez ręcznych zmian w obszarze roboczym lub folderach Eclipse. Myślę, że jest to związane z intelektualnym zachowaniem debuggera, kiedy zatrzymuje się przed możliwą przerwą. Debugger Eclipse jest błędny iw tej, bardzo skomplikowanej części może być jeszcze bardziej błędny. – Gangnus

20

Prawidłowe rozwiązanie jest iść

Window -> Show View -> Pozostałe -> Debug -> Wartości graniczne,

a następnie na tym widoku kliknij przycisk Usuń wszystkie punkty przerwania.

Wydaje zaćmienie irytować i myśli nie było przerwania gdzie nie było

+0

Interesująca obserwacja, dziękuję, +1, sama tego nie spotkałam. Ale tak nie było. To nie jest rozwiązanie, ani właściwe rozwiązanie, to tylko jedno z wielu możliwych rozwiązań - lepiej poprawić nagłówek. – Gangnus

+2

To działało dla mnie, ale najwyraźniej nie dlatego, że Eclipse się zmieszał, ale dlatego, że Eclipse zdezorientował mnie. :) Najwyraźniej na mojej klasie znajdował się punkt przerwania, który jest wyróżniony symbolem "C" zamiast zwykłego niebieskiego bulletu. –

+1

Po latach to pomogło! –

3

miałem ten sam problem; był to punkt przerwania w deklaracji klasy MyActivity.java. Najwyraźniej punkt przerwania w deklaracji klasy pojawia się w edytorze jako białe "C" w zielonym kółku, zamiast zwykłej niebieskiej kropki. Musiałem mieć coś na paluszku, żeby ten punkt przełamania został dodany. Usunąłem punkt przerwania, a debugger już się tam nie zatrzymuje.

+0

W moim przypadku wszystkie punkty przerwania zostały wyczyszczone. – Gangnus

Powiązane problemy