Jak zapobiec zawieszaniu się Eclipse podczas uruchamiania?


228

Korzystam z Eclipse 3.3 („Europa”). Okresowo uruchomienie Eclipse zajmuje wyjątkowo dużo czasu (być może wieczność). Jedyne, co widzę w dzienniku Eclipse, to:

    ! WPISZ org.eclipse.core.resources 2 10035 2008-10-16 09: 47: 34.801
    ! WIADOMOŚĆ Obszar roboczy został zakończony z niezapisanymi zmianami w poprzedniej sesji; odświeżanie obszaru roboczego w celu przywrócenia zmian.

Googling ujawnia czyjąś sugestię , że usunę folder:

workspace\.metadata\.plugins\org.eclipse.core.resources\.root\.indexes

Wydaje się, że to nie pomogło.

Czy zaczynam od nowego obszaru roboczego (czego nie chcę robić, ponieważ prawidłowe ustawienie wszystkich moich projektów zajmuje mi wiele godzin), czy istnieje sposób, aby poprawnie uruchomić Eclipse?


4
rozwiązanie w tym pytaniu zadziałało dla mnie :)
Charith De Silva,


Należy pamiętać o jednej rzeczy - kiedy Eclipse uruchamia się, buduje lub jeśli używasz kontroli źródła, porównuje katalog lokalny z repozytorium, skanuje katalog (y) projektu. Więc jeśli piszesz wiele plików wyjściowych lokalnie, Eclipse będzie musiał je przeskanować - nawet jeśli znajduje się w obszarze roboczym / twój_projekt / tmp. Jeśli liczba plików jest naprawdę duża (powiedzmy, że symulujesz bazę danych z plikami lokalnymi), może to zająć trochę czasu. Spowoduje to rodzaj niestabilności, które ludzie tutaj zgłaszają. Najlepiej umieścić takie dane gdzie indziej.
Mark Butler,

Odpowiedzi:


267

To może nie być dokładne rozwiązanie twojego problemu, ale w moim przypadku śledziłem pliki, które Eclipse odpytywał za pomocą SysInternals Procmon , i odkryłem, że Eclipse stale odpytuje dość duży plik migawki dla jednego z moich projektów. Usunęliśmy to i wszystko zaczęło się dobrze (choć z obszarem roboczym w stanie, w jakim był przy poprzednim uruchomieniu).

Plik został usunięty:

<workspace>\.metadata\.plugins\org.eclipse.core.resources\.projects\<project>\.markers.snap

2
Ten plik nie istniał w mojej wersji.
Użytkownik1,

71
2011-06-08: Pod Eclipse 3.6 (Helios) wydaje się, że odpowiedni plik .metadata/.plugins/org.eclipse.core.resources/.snap. Zabiłem ten plik i presto, Eclipse uruchomiło się ponownie. Właśnie zauważyłem, że to powiela odpowiedź Joj.
Carl Smotricz

11
Usunięcie pliku .metadata \ .plugins \ org.eclipse.core.resources \ .projects \ <project> \ .markers.snap nie działało dla mnie. Musiałem usunąć .metadata / .plugins / org.eclipse.core.resources / .snap
1.21 gigawatów

3
Ja też musiałem usunąć .metadata / .plugins / org.eclipse.core.resources / .snap dzięki Donny Kumia za 1,21 gigawata
Andrew Mackenzie

2
Samo usunięcie pliku .snap jako @ 1.21gigawatts wystarczyło mi, aby go uruchomić.
marlonp33

233

próbować:

  1. cd do <workspace> \ .metadata \ .plugins \ org.eclipse.core.resources
  2. usuń plik * .snap (lub .markers w kolorze Indigo)

3
Jesteś moim bogiem BTW, co zwykle robi .snap?
Michał Pękała

1
Ten plik istniał dla mnie, ale .metadata.plugins \ org.eclipse.core.resources.projects \ .markers.snap wspomniany w drugiej odpowiedzi nie. Wydaje mi się, że nie straciłem nic krytycznego z mojego obszaru roboczego poprzez usunięcie tego pliku.
Użytkownik1,

1
@ MichałPękała Zastanawiałem się również nad efektem usunięcia tego pliku, znalazłem inne pytanie, na które nieco odpowiadam: jakie są pliki snap w eclipse
pconcepcion

wow działało dla mnie, chociaż mój problem nie był taki sam, ale podobny. Eclipse otwiera się i pokazuje kod, ale gdy tylko wykonam jakąkolwiek akcję, przechodzi w nieskończoną pętlę. Mogłem spędzić życie i nie mogłem rozwiązać problemu. Dzięki stary.
Ali,

Zaćmienie Eclipse powinno być wykonywane automatycznie podczas uruchamiania, jeśli wystąpi błąd.
aroth

54

W moim przypadku (Juno) musiałem to zrobić:

find $WORKSPACE_DIR/.metadata/.plugins/org.eclipse.core.resources/.projects \
-name .indexes -exec rm -fr {} \;

To załatwiło sprawę.

Początkowo myślałem, że to problem z Mylyn (doświadczyłem tych zawieszeń po tym, jak zacząłem używać jego ogólnego złącza sieciowego), ale problem pojawił się nawet po odinstalowaniu złącza, a nawet usunięciu katalogów .mylyn.

Edycja: Udało mi się również zrestartować zaćmienie, usuwając tylko jeden plik:

rm $WORKSPACE_DIR/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi

To działało dobrze, bez żadnych indeksów. Tylko workbech, którego osobiście nie mam nic przeciwko.


Jak ustaliłeś, że .indexesprzyczyną problemu były pliki?
Jeff Axelrod,

Obawiam się, że próbę / błąd. Podejrzewałem, że to wina Mylyn, więc zacząłem od katalogu .mylyn bezskutecznie. Potem czytałem gdzieś o blokowaniu zaćmienia podczas indeksowania, więc poszedłem po te.
Rafa

7
Usuwanie plików .markers nie działało dla mnie, ale usunięcie plików .indexes i workbench.xmi spowodowało ponowne załadowanie mojego obszaru roboczego.
Nathaniel Waisbrot

Próbowałem wiele rzeczy i usunięcie tego workbench.xmi zrobiło to dla mnie dzięki!
Marc

3
Usuwanie $ WORKSPACE_DIR / .metadata / .plugins / org.eclipse.e4.workbench / workbench.xmi też dla mnie zadziałało (uruchamiam zaćmienie Marsa)
Nenad

36

Możesz spróbować zacząć Eclipseod -cleanopcji.

W systemie Windows możesz dodać -cleanopcję do skrótu zaćmienia. On Linuxpo prostu dodać go podczas uruchamiania Eclipsez wiersza poleceń.


3
Z moim problemem w systemie Windows (podobnym, jeśli nie identycznym z pytającymi) nie rozwiązało to problemu.
russellpierce

Jedno z bardziej nieszkodliwych rozwiązań, które powinieneś wypróbować w pierwszej kolejności.
pqn

35

Ten działa dla mnie:

Kolejne i nieco lepsze obejście, które najwyraźniej działa:

  1. Close Eclipse.
  2. Tymczasowe przeniesienie naruszającego projekt gdzieś poza obszar roboczy.
  3. Rozpocznij Eclipse, poczekaj na załadowanie obszaru roboczego (powinno).
  4. Zamknij Eclipseponownie.
  5. Przenieś projekt z powrotem do obszaru roboczego.

Źródło: Eclipse zawiesza się podczas otwierania obszaru roboczego po aktualizacji do silnika aplikacji GWT 2.0 / Google 1.2.8


Dzięki @Hendy! to jedyne rozwiązanie, które działało dla mnie w Eclipse Luna.
Yassine ElBadaoui,

To działa, chociaż jest to paskudne rozwiązanie za każdym razem, gdy trzeba rozpocząć zaćmienie. W każdym razie dzięki :)
Roberto14

Na marginesie: musiałem otworzyć inną wersję zaćmienia, załadować obszar roboczy, zamknąć go, a następnie ponownie otworzyć ten, którego naprawdę chciałem użyć.
rfsbsb

31

Użyłem eclipse -clean -clearPersistedStatei to działało dla mnie.

Ostrzeżenie: może to usunąć wszystkie projekty z obszaru roboczego.


3
Uwaga: spowoduje to również zresetowanie perspektywy obszaru roboczego.
Aldjinn

Działało, ale w moim przypadku usunęło również wszystkie projekty.
mprabhat

13

Miałem podobny problem z dość dużym obszarem roboczym w wersji 3.5 i brakiem plików .snap w dowolnym miejscu. „ Windows-> Preferences-> General-> Uruchamianie i zamykanie -> Odśwież obszar roboczy podczas uruchamiania” wydaje się być ustawieniem związanym z obszarem roboczym, więc nie mogłem go zmienić dla obszaru roboczego, który powodował zawieszenie.

Uruchamianie eclipsez parametrem wiersza polecenia -refresh, a następnie zmiana ustawienia wydaje się załatwić sprawę.


3
W ten sposób udało mi się to uruchomić. -refreshnieco było kluczem dla mnie. Dzięki!
Chris Krycho

- sama czystość nie pomogła, musiałem też uruchomić
odświeżenie

12

Miałem też szczęście z usuwaniem plików * .snap. Moje znajdowały się w innym katalogu niż wymienione w postach (poniżej).

<eclipse workspace>/.metadata/.plugins/org.eclipse.core.resources/.projects

W związku z tym następujący unid cmd załatwił sprawę:

find <eclipse_workspace>/.metadata/.plugins/org.eclipse.core.resources/.projects  -name "*.snap" -exec rm -f {} \;

8

Próbowałem wszystkich odpowiedzi w tym wątku i żadna z nich nie działała dla mnie - nie pliki snap, nie przenoszące projektów, żadna z nich.

Dziwnie działało przeniesienie wszystkich projektów i folderu .metadata gdzie indziej, uruchomienie Eclipse, zamknięcie go, a następnie przeniesienie wszystkich z powrotem.


5

Ponieważ nie mam pliku .snao lub .prefs w folderze .metadata.plugins \ org.eclipse.core.resources (działającym w systemie OS X), dla mnie sztuczka polegała na skopiowaniu folderu .project do old.project , uruchom Eclipse i sprawdź

Windows -> Preferencje -> Ogólne -> Uruchamianie i zamykanie -> Odśwież obszar roboczy podczas uruchamiania

jak zaproponował Matt b. Następnie zamknąłem Eclipse, zmieniłem nazwę folderu na old.projects z powrotem na .projects, a potem wszystko znów działało dobrze.


3

Ja to zrobiłem:

  1. cd do .metadata.plugins \ org.eclipse.core.resources
  2. usuń plik .snap
  3. Zauważyłem, że zakładka Postęp robiła coś co kilka sekund ... wydawało się, że utknęła
  4. Wyjdź z zaćmienia (NIE PRZESYŁAJ | PONOWNIE URUCHOM TUTAJ LUB MUSISZ POWRÓT DO KROKU 1 PONOWNIE)
  5. Otwórz ponownie zaćmienie.

Używanie -refreshlub -cleanpodczas uruchamiania Eclipse nie pomogło.


3

W systemie Mac OS X środowisko Eclipse można uruchomić, klikając dwukrotnie aplikację Eclipse. Jeśli musisz przekazać argumenty do Eclipse, musisz edytować plik eclipse.ini w pakiecie aplikacji Eclipse: wybierz ikonę pakietu aplikacji Eclipse, przytrzymując klawisz Control. Spowoduje to wyświetlenie menu podręcznego. Wybierz „Pokaż zawartość opakowania” z menu podręcznego. Znajdź plik eclipse.ini w podfolderze Contents / MacOS i otwórz go w swoim ulubionym edytorze tekstu, aby edytować opcje wiersza poleceń.

dodaj: „-clean” i „-refresh” na początku pliku, na przykład:

-clean
-refresh
-startup
../../../plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library

To działało dla mnie dla Eclipse Luna na OSX 10.10.3 (Yosemite). Dzięki Oded!
Scott Presnell

2

Sprawdź, czy Launcher Workspace Launcher nie otworzył się na telewizorze lub innym drugim monitorze. Zdarzyło mi się. Objawy wyglądają tak samo jak opisany problem.


1

Windows -> Preferencje -> Ogólne -> Uruchomienie i zamknięcie

Jest Refresh workspace on startupzaznaczone?


10
Trudno to ocenić, kiedy obszar roboczy Eclipse nie chce się otworzyć.
russellpierce

To nie jest bardzo pomocny komentarz, @rpierce, ponieważ zawsze możesz określić inny obszar roboczy podczas uruchamiania (pod warunkiem, że Eclipse nie skonfigurował domyślnie określonego obszaru roboczego podczas uruchamiania!). ** Zawsze możesz ustawić SHOW_WORKSPACE_SELECTION_DIALOG = false w org.eclipse.ui.ide.prefs, aby cofnąć tę czynność, jeśli ustawiłeś domyślną wartość ** Przy założeniu, że możesz rozpocząć pracę z innym obszarem roboczym, zaznacz pole wyboru „Odśwież obszar roboczy na start ”, a następnie uruchom ponownie Eclipse i wróć do pierwotnego obszaru roboczego. To powinno popchnąć wszystko do przodu.
user924272

1
@ user924272: Cóż, <shrug> 9 osób nie zgodziło się z Twoją oceną dotyczącą mojego komentarza. Niemniej jednak z przyjemnością przyznam, że twój komentarz jest bardziej przydatny ... i może rzeczywiście dostarczyć informacji, które Matt B mógłby zawrzeć w swojej odpowiedzi, co uczyniłoby to lepszą odpowiedzią. Ale teraz informacje, które podałeś, są tutaj i każdy może skorzystać!
russellpierce

1

Właśnie miałem problemy z uruchomieniem Eclipse. Zostało to naprawione przez usunięcie tego pliku:

rm org.eclipse.core.resources.prefs

Znalazłem w .settings


1

UFT powodujące problemy z RDz (oparte na Eclipse) po instalacji Te sugestie pozwolą obejść tę sytuację, nawet przy zmiennych środowiskowych i odpowiednich wartościach.

Uwaga : Aplikacja powodująca konflikt nie zostanie rozpoznana w kontekście Java, ponieważ jest wykluczona z mechanizmu obsługi Java.

  1. Wpływ: Wyklucza obsługę dodatków z przechwytywania aplikacji powodujących konflikt za pomocą edytora rejestru systemu Windows. Wymagania: Aplikacja musi zostać uruchomiona za pomocą pliku EXE, z wyjątkiem Java.exe / Javaw.exe / jpnlauncher.exe

Instrukcje :

za. Znajdź plik wykonywalny aplikacji powodujący konflikt z obsługą dodatków. Użyj Menedżera zadań lub Eksploratora procesów Microsoft.

b. Otwórz Edytor rejestru systemu Windows.

do. Przejdź do: HKEY_LOCAL_MACHINE \ SOFTWARE \ Mercury Interactive \ JavaAgent \ Modules Dla aplikacji 32-bitowych w systemie Windows x64: HKEY_LOCAL_MACHINE \ SOFTWARE \ Wow6432Node \ Mercury Interactive \ JavaAgent \ Modules

re. Utwórz wartość DWORD o nazwie pliku wykonywalnego powodującego konflikt oprogramowania i ustaw wartość na 0.

Zaktualizowany rejestr


1

Usunięcie * .snap (moje to * .markers), --clean-data lub przenieś folder obszaru roboczego wydaje się, że wszystko nie działało dla mnie.

Gdy moje zaćmienie przestało działać po zainstalowaniu i przełączeniu mojego wejścia keyborad na HIME, wróciłem do fctix i zadziałało.


To nie daje odpowiedzi na pytanie. Gdy zdobędziesz wystarczającą reputację , będziesz mógł komentować dowolny post ; zamiast tego podaj odpowiedzi, które nie wymagają wyjaśnienia od pytającego . - Z recenzji
Vishva Dave

1
@VishvaDave Czy pytanie nie rozwiązuje problemu, który utknął w Eclipse? Myślę, że mamy do czynienia z tym samym problemem, a odpowiedź zadziałała w moim przypadku.
adayoegi

0

Nie miałem plików Snap. Przeglądając listę instalacji menu pomocy, przynajmniej 90% moich wtyczek miało dezaktywowany przycisk odinstalowania, więc nie mogłem sobie z tym poradzić. Podczas uruchamiania / zamykania większość wtyczek nie była wymieniona. Zamiast tego musiałem ręcznie usunąć elementy z folderu wtyczek. Wow, czas uruchamiania jest dla mnie teraz znacznie szybszy. Jeśli więc wszystko inne nie działa, a masz jednorazowe wtyczki, może to być najlepsze rozwiązanie.


0

Niestety żadne z tych rozwiązań nie działało dla mnie. Skończyło się na tym, że musiałem utworzyć nowy obszar roboczy, a następnie zaimportowałem istniejące projekty do nowego obszaru roboczego. Niestety, tracisz przy tym preferencje (pamiętaj, aby wyeksportować ustawienia za każdym razem, gdy je zmienisz!)


0

Miałem bardzo podobny problem z Eclipse (Juno) na Fedorze 18. W trakcie debugowania sesji Androida, Eclipse zakończyło sesję debugowania. Próbowałem zrestartować zaćmienie, ale nadal wyświetlał ekran powitalny. Próbowałem różnych sugestii powyżej bezskutecznie. Na koniec sprawdziłem usługę adb (most debugowania Androida):

# adb devices
List of devices attached 
XXXXXX offline

Wiem, że urządzenie z Androidem było nadal podłączone, ale zgłosiło to offline. Odłączyłem urządzenie i zamknąłem usługę adb:

# adb kill-server

Potem odczekałem kilka sekund i ponownie uruchomiłem usługę adb:

# adb start-server

I ponownie podłączyłem mojego Androida. Potem zaćmienie zaczęło się dobrze.


0

nie trzeba usuwać całego pliku metadanych. po prostu spróbuj usunąć plik .snap z org.eclipse.core.resources w folderze obszaru roboczego

ex. E:\workspaceFolder\.metadata\.plugins\org.eclipse.core.resources

0

Uważaj na zerowe bajty .plugin w folderze {WORKSPACE-DIR} /. Metadata / .plugins. Właśnie usunąłem jedną z nich i naprawiłem problemy z zawieszaniem się.


0

W moim przypadku podobne objawy były spowodowane przez nieuczciwe repozytorium git z mnóstwem niepotrzebnych plików systemowych.

Uniwersalnym lekarstwem, jak wspomniano powyżej, jest użycie Monitora procesów do wykrycia szkodliwych plików. Przydatne jest ustawienie następującego filtru 2-liniowego:

  • Nazwa procesu to eclipse.exe
  • Nazwa procesu to javaw.exe

0

Miałem podobny problem po aktualizacji Eclipse na Mavericks. W końcu odkryłem, że w katalogu wtyczek eclipse słoik com.google.gdt.eclipse.login miał na końcu numery wersji. Usunąłem numer wersji z nazwy i wszystko zaczęło się dobrze :)



0

To może pomóc

W twoim zaćmieniu

1) Idź do pomocy

2) Kliknij platformę Eclipse

3) szukaj - optymalizator

zainstaluj „optymalizator dla zaćmienia”

wprowadź opis zdjęcia tutaj


0

W Ubuntu eclipse -clean -refreshpracował dla mnie dla Eclipse 3.8.1


0

Przyczyną może być również ten błąd, jeśli masz Eclipse 4.5 / 4.6, wersję wtyczki Eclipse Xtext starszą niż v2.9.0 i określoną konfigurację obszaru roboczego.

Obejściem tego problemu byłoby utworzenie nowego obszaru roboczego i zaimportowanie istniejących projektów.


0

Cóż, miałem podobne zachowanie podczas rozpoczynania zaćmienia nad X11. Zapomniałem zaznaczyć opcję „Xing forwarding” w moim zestawie.


0

W moim przypadku zadziałało usunięcie folderu .metadata obszaru roboczego. Korzystam z usługi Eclipse Luna w wersji 2.

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.