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.