Ustanowione połączenie zostało przerwane przez oprogramowanie na komputerze głównym


134
[2011-04-11 13:27:36 - ddmlib] Ustanowione połączenie zostało przerwane przez oprogramowanie na komputerze głównym
java.io.IOException: ustanowione połączenie zostało przerwane przez oprogramowanie na komputerze głównym
    at sun.nio.ch.SocketDispatcher.write0 (metoda macierzysta)
    na sun.nio.ch.SocketDispatcher.write (nieznane źródło)
    at sun.nio.ch.IOUtil.writeFromNativeBuffer (nieznane źródło)
    na sun.nio.ch.IOUtil.write (nieznane źródło)
    na sun.nio.ch.SocketChannelImpl.write (nieznane źródło)
    w com.android.ddmlib.JdwpPacket.writeAndConsume (JdwpPacket.java:213)
    w com.android.ddmlib.Client.sendAndConsume (Client.java:573)
    w com.android.ddmlib.HandleHeap.sendREAQ (HandleHeap.java:349)
    at com.android.ddmlib.Client.requestAllocationStatus (Client.java:419)
    w com.android.ddmlib.DeviceMonitor.createClient (DeviceMonitor.java:840)
    w com.android.ddmlib.DeviceMonitor.openClient (DeviceMonitor.java:808)
    w com.android.ddmlib.DeviceMonitor.processIncomingJdwpData (DeviceMonitor.java:767)
    w com.android.ddmlib.DeviceMonitor.deviceClientMonitorLoop (DeviceMonitor.java:635)
    w com.android.ddmlib.DeviceMonitor.access 100 USD (DeviceMonitor.java:42)
    w com.android.ddmlib.DeviceMonitor $ 3.run (DeviceMonitor.java:563)

1
Dzięki Nishant, nawiasem mówiąc, podobna odpowiedź jest wymieniona tutaj ...
kamal_tech_view

1
@Nishant, ten link po prostu prowadzi mnie do strony z linkami typu „gdzie się położyć”. Myślę, że zawartość została przeniesiona. Czy możesz opublikować nowy link?
msknapp

spójrz na właściwości> Ścieżka budowania Java, może szukać brakującej biblioteki
Benny

Odpowiedzi:


122

Ten problem można po prostu rozwiązać, zamykając Eclipse i uruchamiając go ponownie. Czasami Eclipse nie nawiązuje połączenia z Emulatorem, więc może się to zdarzyć w niektórych przypadkach.


8
Nie działa na mnie. Muszę wykonać pełne ponowne uruchomienie komputera, gdy tak się stanie (co zdarza się często!)
Nate,

13
@Nate, jeśli zrestartujesz również adb (adb kill-server / adb start-server), czy to uchroni cię przed ponownym uruchomieniem komputera?
Björn,

3
Wielkie dzięki, Bjorn. Rzeczywiście znalazłem inny link i zgodnie z jego radą napisałem sobie skrypt .bat, który wykonuje „odłączenie adb”, a następnie „serwer zabijania adb”. To rozwiązuje problem bez ponownego uruchamiania. Jeszcze raz dziękujemy za kontynuację!
Nate,

6
Taki sam problem. Miałem uruchomiony JetBrains IDEA. Pomogło zamknięcie IDEA.
Nash,

6
Wydaje się, że nie tylko zaćmienie, studio Android też takie wygląda
Steve,

69

Do kasy mogą być dwa wystąpienia Eclipse wskazujące na ten sam Android SDK ... po prostu zachowaj jedno wystąpienie Eclipse i spróbuj ponownie ... dlatego otrzymujesz wyjątek, ponieważ „ustanowione połączenie zostało przerwane przez oprogramowanie na twoim komputerze głównym”. .. przejdź do szczegółów android adb (Android Debug Bridge) dostaniesz to ...


2
Ten problem można po prostu rozwiązać, zamykając Eclipse i uruchamiając go ponownie ... Ponieważ Eclipse spadł, aby nawiązać połączenie z Emulatorem, zdarza się to w niektórych przypadkach ...
kamal_tech_view

11
Moim problemem były 2 uruchomione instancje zaćmień!
Matt

8
Lub alternatywnie Android Studio i Eclipse. :)
Oleg Vaskevich

19

Też otrzymywałem te błędy i byłem zaskoczony. Po przeczytaniu i wypróbowaniu dwóch powyższych odpowiedzi nadal otrzymywałem błąd.

Jednak sprawdziłem kartę Procesy Menedżera zadań, aby znaleźć fałszywą kopię „eclipse.exe * 32”, której interfejs użytkownika nie pokazał jako uruchomiony. Wydaje mi się, że powinno to być oczywiste, ponieważ błąd sugeruje, że powodem, dla którego emulator / telefon nie może się połączyć, jest to, że nawiązał już połączenie z drugą kopią.

Krótko mówiąc, przed ponownym uruchomieniem komputera upewnij się za pośrednictwem Menedżera zadań, że żadne inne instancje Eclipse nie są uruchomione!


1
Sprawdź również, czy nie ma żadnych pozostałości procesu emulatora
Michael

10

Jeśli tworzysz w wielu IDE lub innych programach, które łączą się z AVD, powinieneś spróbować je zamknąć.

Netbeans może również powodować konflikty z eclipse, jeśli skonfigurujesz go dla NBAndroid.


6

Miałem problem z wieloma IDE. Zamknięcie Eclipse, zabicie z menedżera zadań lub ponowne uruchomienie nie pomogło. Po prostu usunąłem AVD i utworzyłem go ponownie.


6

ROZWIĄZANIE :-

  1. Otrzymywałem ten sam błąd, co przy otwieraniu dwóch okien zaćmień, więc zamykam jedno okno zaćmienia i ponownie uruchamiam aplikację. Nie otrzymasz błędu.

  2. zrestartuj (zamknij i uruchom) ponownie zaćmienie, jeśli masz otwarte tylko jedno okno zaćmienia.


Jak uruchomić dwie instancje zaćmienia ..?
Chaitanya

1
Po prostu uruchom dwa różne obszary robocze od tej samej ikony zaćmienia, a otrzymasz dwa wystąpienia zaćmienia.
Nikhil Kumar,

3

Ten problem może wystąpić, jeśli do komputera są podłączone jednocześnie dwa urządzenia. Adb nie obsługuje dostępu do obu urządzeń za pomocą polecenia / konsoli. Jeśli więc debugujesz aplikację po podłączeniu i odłączeniu drugiego urządzenia, najprawdopodobniej wystąpi ten problem. Jednym z rozwiązań może być ponowne uruchomienie adb i / lub eclipse, jeśli to konieczne. Czasami może to być dość denerwujące i obawiam się, że nie ma na to innego rozwiązania.


3

Ten problem może również wystąpić podczas jednoczesnego otwierania Android Studio i Eclipse. Spróbuj zamknąć jeden z nich, a może to rozwiązać Twój problem.


2

W moim przypadku używałem jednocześnie Android Studio i Eclipse . AS i Eclipse próbowały komunikować się z urządzeniem / emulatorem przez adb .

Rozwiązanie: zamknąłem Android Studio. Następnie ponownie uruchomiłem Eclipse.

Mam nadzieję, że to ci pomoże :)


1

Zamknij emulator, jeśli jest już otwarty. Kliknij prawym przyciskiem myszy swój projekt -> Uruchom jako -> uruchom konfiguracje -> Uruchom. Po uruchomieniu emulatora: Kliknij prawym przyciskiem myszy swój projekt -> Uruchom jako -> projekt androida.


1

Napotkałem ten problem na mojej 64-bitowej maszynie programistycznej z systemem Windows 7, gdy korzystałem z Android Studio 2.1.xi Android Studio 2.2.x.

Wdrożyłem aplikację za pośrednictwem instancji 2.2.x poprzedniego dnia i pozostawiłem to IDE działające. Następnego dnia wdrożyłem inną aplikację niż IDE 2.1.x i wtedy napotkałem problem.

Zamknięcie obu IDE, a następnie ponowne uruchomienie IDE 2.1.x rozwiązało problem.


0

Ponowne uruchomienie eclipse rozwiąże problem i zabije „odłączenie adb”, a następnie „serwer zabijania adb”


0

Na komputerze z systemem Windows chciałem uniknąć ponownego uruchomienia, ale te nie działały: * / android / adt-bundle-windows / sdk / platform-tools / adb kill-server * / android / adt-bundle-windows / sdk / platform- narzędzia / adb start-server

Więc co zadziałało, aby ponownie uruchomić adb bez tego błędu, to

  1. poczekaj na zakończenie CZASU OCZEKIWANIA, co zajęło kilka minut. Możesz wyświetlić stan portów i obserwować, kiedy należy ponownie uruchomić debugger za pomocą tego polecenia: „PortQryV2 / PortQry.exe -local” To narzędzie jest do pobrania tutaj: http://support.microsoft.com/?id=832919

  2. wymuś zamknięcie portów za pomocą „netsh int tcp reset”


0

Jedyną rzeczą, która działała dla mnie (pod Windows), było ponowne otwarcie IDE jako administrator. Potem wszystko działało gładko.


0

Rozwiązałem ten problem, zamykając Eclipse i ponownie go uruchamiając. Czasami Eclipse nie nawiązuje połączenia z Emulatorem / urządzeniem, więc czasami może się to zdarzyć.


0

Uruchamiam Eclipse Luna i używam aplikacji WifiADB na moim telefonie. Zacząłem otrzymywać ten błąd podczas uruchamiania aplikacji z Eclipse. Co dziwne, w Indigo (wczoraj zainstalowałem Luna) działało dobrze.

Problem polegał na tym, że miałem telefon podłączony do komputera, aby go naładować, a nawet po uruchomieniu skryptu .bat w celu zabicia ADB wydawało się, że druga instancja została uruchomiona po uruchomieniu. Podłączenie telefonu do monitora w celu ładowania podczas debugowania przez Wi-Fi rozwiązało problem. Czasami muszę debugować sieć Wi-Fi, aby przetestować zatrzymywanie / uruchamianie aplikacji po zmianie stanu zasilania.

Oczywiście rozsądnie jest założyć (bardzo prawdopodobne), że po prostu nie ustawiłem Luny tak samo.


0

Ten problem pojawia się, jeśli dwa programy używają tego samego portu,
ogólnie Android Studio użyj portu 5037
spróbuj zamknąć port przez cmd zgodnie z systemem operacyjnym,
a następnie uruchom ponownie studio Android lub Eclipse


-2

Miałem ten problem. Rzeczy, które próbowałem:

  1. Uruchom ponownie Eclipse
  2. Zrestartuj Eclipse & Kill adb, jak wspomniano tutaj.
  3. Uruchom ponownie komputer i otwórz Eclipse

To właśnie zadziałało dla mnie

  1. Wyłączono (wyciągnięto wtyczkę) moje urządzenie z Androidem, uruchom ponownie urządzenie, włącz urządzenie z systemem Android.

Mam nadzieję, że to komuś pomoże!



-2
  1. Zamknij Eclipse
  2. Otwórz Menedżera zadań i zabij adb.exe
  3. Uruchom Eclipse Powinno działać.
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.