zaćmienie utknęło podczas tworzenia przestrzeni roboczej


125

Używam Eclipse 3.4.1 Java EE pod Vista. Wygląda na to, że utknąłem podczas tworzenia mojego miejsca pracy. Anulowanie kompilacji również wydaje się nic nie robić.

Dlaczego tak się dzieje i jak rozwiązać problem?


1
Jedyna wtyczka, którą zainstalowałem, to maven.
sean

Odpowiedzi:


9

Możesz zapoznać się z artykułem Jak zgłosić zakleszczenie . Możesz również sprawdzić widok błędów i / lub dziennik błędów ([obszar roboczy] /. Metadata / .log). Jeśli to nie pomoże, prawdopodobnie będziesz musiał dołączyć więcej informacji na temat zainstalowanych wtyczek i posiadanych projektów. Czy potrafisz stworzyć minimalny obszar roboczy, który odtwarza problem?


problem jest sporadyczny, więc robi się naprawdę irytujący. Ale ok, zobaczmy, czy mogę uzyskać więcej informacji o problemie.
sean

1
Możliwe, że samo utworzenie czystego obszaru roboczego i zaimportowanie projektów rozwiąże problem. W każdym razie warto spróbować.
zvikico

12
To wcale nie odpowiada na pytanie. @JamesBeninger dostarczył może nie idealne, ale wykonalne rozwiązanie poniżej
Dima

Przejdź do okna - Pokaż widok - Inne - Ogólne - Dziennik błędów z menu plików w Eclipse. Możesz do niego również wejść z Help - o Eclipse - szczegóły instalacji - zakładka konfiguracja - przycisk View Error Log.
James Drinkard

144

Udało mi się to naprawić w następujący sposób:

Najpierw wyjdź z Eclipse. Następnie tymczasowo przenieś następujący .projectsfolder w bezpieczne miejsce:

mv .metadata\.plugins\org.eclipse.core.resources\.projects projects

Uruchom i zamknij Eclipse, a następnie przenieś .projectsfolder z powrotem do miejsca, w którym był pierwotnie:

mv projects .metadata\.plugins\org.eclipse.core.resources\.projects

Oczywiście korzystasz na własne ryzyko.


11
U mnie też zadziałało (przy okazji, aby być bezpiecznym, zawsze możesz „mv yourContents yourContents.bak” zamiast je usuwać).
machineghost

6
W rzeczywistości spowodowało to usunięcie wszystkich funkcji subclipse z moich projektów, prawdopodobnie dlatego, że nie są one już powiązane z repozytorium. Musiałem przywrócić z kopii zapasowej.
Muhd

3
Działało tylko dla mnie: zamknięcie Eclipse, przeniesienie folderu do innej lokalizacji, ponowne uruchomienie Eclipse, zamknięcie Eclipse, przeniesienie folderu do oryginalnej lokalizacji .. Nie wiem dlaczego ...
gc5

7
Udało mi się rozwiązać ten problem, usuwając .metadata \ .lock - ten plik istniał po zamknięciu / zabiciu zaćmienia, ale kiedy usunąłem, kompilacja działała.
maestro,

3
nie zapominaj, że te ścieżki są dla systemu Windows, dla linuksa użyj / zamiast \
ACV

27

Czasami bardzo pomocne jest wykonanie zaćmienia z wiersza poleceń z parametrem „-clean”, aby wymusić porządkowanie obszaru roboczego.


1
AFAIK, nie ma to nic wspólnego z przestrzenią roboczą. Czyści pamięć podręczną wtyczek. Zauważysz, że czas uruchamiania przed zapytaniem o obszar roboczy jest znacznie dłuższy. Po określeniu obszaru roboczego jest tak samo.
zvikico

1
Nie tylko. Generalnie czyści pamięć podręczną zaćmień, więc wszystkie niepowiązane śmieci w obszarze roboczym zostaną również usunięte.
Artem Barger

21

Eclipse -clean nie działało, ale po nim

eclipse -clean -clearPersistedState

To nie daje odpowiedzi na pytanie. Aby skrytykować lub poprosić autora o wyjaśnienie, zostaw komentarz pod jego postem.
Politank-Z

8
Wręcz przeciwnie, moja odpowiedź odpowiada na pytanie, miałem dokładnie ten sam problem, wypróbowałem wiele rozwiązań, jedyne, które opublikowałem, działało.
user2574678

6
Uwaga: powoduje to również zresetowanie perspektyw środowiska roboczego eclipse.
Jens Piegsa

Mi to pasuje. Jednak za pierwszym razem nie zadziałało, ale zanim spróbowałem ponownie, po prostu usunąłem plik .lock z folderu .metadata i ponownie uruchomiłem eclipse -clean -clearPersistedState, więc działało idealnie. :)
tutorialfeed

15

Eclipse często zawiesza się na 44%, jeśli debuguję Androida przez USB. Podczas odłączania urządzenia uruchamia się Eclipse.


10

Zaakceptowana odpowiedź pozwoliła mi ponownie uruchomić Eclipse, ale wydaje się, że projekty utraciły metadane. (Np. Wszystkie ikony Git / Gradle / Spring zniknęły z nazw projektów.) Mam tam wiele projektów i nie chciałem importować ich od nowa.

Oto, co zadziałało dla mnie pod kierunkiem Keplera. YMMV, ale chciałem to nagrać na wypadek, gdyby to komuś pomogło.

Krok 1. Tymczasowo usuń .projectsplik z drogi:

$ cd .metadata/.plugins/org.eclipse.core.resources
$ mv .projects .projects.bak

Krok 2. Następnie uruchom Eclipse. Brakuje metadanych, ale przynajmniej Eclipse uruchamia się bez utknięcia.

Krok 3. Zamknij Eclipse.

Krok 4. Przywróć .projects.bakplik do jego oryginalnej nazwy:

$ mv .projects.bak .projects

Krok 5. Uruchom ponownie Eclipse. Może coś zbudować, ale tym razem powinno się przedostać. (Przynajmniej zrobiło to dla mnie.)


FWIW, miałem okazję używać tego kilka razy w ciągu ostatnich kilku miesięcy i jak na razie działa za każdym razem.

1
Idealnie, zadziałało. Wielokrotnie utknąłem w takich sytuacjach i musiałem czekać bardzo długo. Wypróbowałem te kroki i zadziałało. Twoje zdrowie!
Vipul

9

Krok 1:

Otwórz katalog projektu i edytuj plik .project, usuń następujące wiersze, aby wyłączyć sprawdzanie poprawności skryptu java.

  <buildCommand>
      <name>org.eclipse.wst.jsdt.core.javascriptValidator</name>
      <arguments>
      </arguments>
    </buildCommand>

Zapisz plik.

Krok 2:

Przejdź do katalogu zainstalowanego Eclipse i otwórz eclipse.ini (lub sts.in, jeśli masz STS), zmień wartości xms i xmx w oparciu o wielkość pamięci RAM komputera.

-Xms512m
-Xmx1024m
-XX:MaxPermSize=256m

LUB: w systemie Windows przejdź do skrótu zaćmienia na pulpicie, kliknij prawym przyciskiem myszy-> właściwości-> dodaj następujące: C: \ software \ eclipse \ sts-3.6.2.RELEASE \ STS.exe -clean -Xms512m -Xmx1024m

Uruchom Eclipse.

Idź do Eclipse-> windows-> preferencje-> Validation, włącz Suspend all validators. Zrób to, jeśli nie chcesz wykonywać żadnej weryfikacji na liście podanej w panelu Validator.


Eclipse decydując się na dodanie walidatora javascript do mojego pliku .project dla projektu GWT (DUŻO wygenerowanego kodu JavaScript, który nie wymaga weryfikacji) spowodowało, że moja kompilacja była boleśnie powolna ... usunięcie tego walidatora zrobiło to w moim przypadku, okrzyki.
Amos M. Carpenter,

to zadziałało, dzięki, ale już zmieniłem plik eclipse.ini z wysokimi wartościami i odznaczyłem całą walidację w oknie preferencji, ale utknąłem na 67% teraz po zastosowaniu kroku 1 twojego rozwiązania, zadziałało ..... !! czy możesz wskazać, jaka jest różnica w usuwaniu zaznaczenia z preferencji i usuwaniu z pliku (czyli twojego rozwiązania)
SSH

8

Mam ten problem, gdy mam otwartych za dużo projektów maven na raz. Zwykle robię:

  • Uruchom ponownie zaćmienie (czasami muszę zabić zaćmienie)
  • Natychmiast wyłącz automatyczną kompilację (projekt> odznacz Kompiluj automatycznie)
  • Kliknij prawym przyciskiem myszy projekt (y), które chcę przebudować
  • Zamknij niepowiązane projekty
  • Ponownie włącz automatyczną kompilację

Umożliwia to funkcjonalną przebudowę w 99% przypadków w moim obszarze roboczym.


Po prostu natychmiastowe wyłączenie kompilacji sprawiło, że naprawiono pętlę zawieszenia.
Rushino

6

Jedynym rozwiązaniem dla mnie (Luna 4.4.1) było to:

Idź do Project Properties> Builders, a następnie odznacz Javascript Validator.


5

Podobny problem napotkałem w Eclipse Indigo. Zmieniłem HeapSize i zaczęło działać poprawnie. Właśnie dodałem następujący plik eclipse.ini -vmargs -Xms1024m -Xmx1024m

Działa dobrze po zwiększeniu rozmiaru maszyny wirtualnej


2

Miałem ten sam problem z moim Eclipse i jako rozwiązanie stworzyłem nowy projekt, skopiowałem wszystkie zasoby ręcznie (za pomocą kopiowania / wklejania systemu Windows) do nowego projektu, usunąłem stary projekt i to wszystko.

Czasami dzieje się tak z powodu nieprawidłowego zamknięcia systemu, a obszar roboczy Eclipse zaczął napotykać podobne problemy.

Mam nadzieję, że to zadziała.


Właśnie usunąłem większość zasobów, ponownie uruchomiłem zaćmienie i skopiowałem je z powrotem.
xmedeko

1

Usunięcie niektórych indeksów JDT (w .metadata.plugins \ org.eclipse.jdt.core), szczególnie dużych plików, często rozwiązuje lub ułatwia mi problem.


0

Po prostu miałem ten sam problem.

Używając Menedżera zadań do zabijania procesu kompilacji i wychodzenia z Eclipse bez otwartych projektów, mogłem wrócić do Eclipse i wyczyścić projekt bez otwierania go. Następnie ponownie uruchomiłem Eclipse, załadowałem mój projekt i wszystko OK.


0

Odznacz automatyczną kompilację za pomocą Eclipse-> Windows-> Preferencje, aby rozwiązać ten problem.


Jest to prawdopodobny problem z uszkodzoną pamięcią podręczną. To, czy projekty są budowane, to inna kwestia.
mlissner

0

Zauważyłem, że może się to również zdarzyć, jeśli przebudujesz obszar roboczy za pomocą projektu zawierającego wiele danych obrazu (takich jak dedykowany projekt obrazów). Najlepiej byłoby umieścić coś takiego w swoim własnym obszarze roboczym i obsługiwać to oddzielnie od reszty projektów, którymi się zajmujesz.

Jeśli nie możesz, nie czyść tego projektu podczas czyszczenia i przebudowy. Przebuduj tylko wtedy, gdy jest to konieczne.


0

W moim przypadku problem pojawia się po zaimportowaniu pobranego projektu - utknąłem na 80% kompilacji. Rozwiązany przez dodanie uprawnień zapisu dla grupy do plików projektu (Ubuntu 12.04).


0

W moim przypadku pomogło to usunąć foldery źródłowe z moich ulubionych w Eksploratorze Windows (Windows 8.0). Wygląda na to, że kompilacja w rzeczywistości nie utknęła, ale została uruchomiona w jakiejś nieskończonej pętli (jak wspomniano tutaj - Bug 342931).


0

Czasami wydaje się, że problem można rozwiązać, zabijając inne programy, które mają otwarte pliki z folderu projektu.


0

Przeglądanie logów [workspace]/.metadata/.logdostarczyło mi przydatnych informacji. Okazało się, że doszło do java.lang.OutOfMemoryError: PermGen space errorzawieszenia kompilacji obszaru roboczego. Można to edytować w pliku eclipse.inilub sts.ini(jeśli używasz pakietu narzędzi SpringSource).


0

Napotkałem ten sam problem, gdy próbowałem zainstalować Angular.js z altaną w moim projekcie. Wygląda na to, że bower ma wiele plików javascript, które pobrał automatycznie, co spowodowało, że moje IDE utknęło w procesie weryfikacji przez długi czas. Więc rozwiązałem ten problem w ten sposób,

  • Najpierw zainstalowałem tern.js 0.9.0.
  • Następnie przeszedłem do właściwości projektu, wybrana ścieżka skryptu tern zawierała tylko ścieżkę potrzebną do walidacji, folder javascript mojego projektu. Wykluczyłem inne ścieżki, takie jak symbole zastępcze, pliki Angular.js, pliki Jquery.
  • Ponownie wybrałem JavaScript z właściwości i zrobiłem to samo w źródle dołączanej ścieżki.

Moje IDE obecnie działa bez zamrażania. Stamtąd skorzystałem z pomocy. Wydaje mi się, że może to być pomocne, gdy jakiekolwiek IDE utknęło z powodu dużej ilości plików Javascript.


0

Wypróbowałem wiele z tych sugestii, ale jedyną rzeczą, która w końcu zadziałała, było utworzenie nowego obszaru roboczego i świeżo sprawdzanie wszystkich moich projektów w tym folderze. Wtedy działało dobrze ;-)


0

Właśnie ponownie uruchomiłem zaćmienie i zaczęło działać następnym razem.




0

Udało mi się to rozwiązać, usuwając dodatkowy folder, który Eclipse utworzył w moim folderze instalacyjnym eclipse. Nie zainstalowałem i korzystałem z Eclilpse Neon 3 z zainstalowanym pakietem Spring Tool. Ale kiedy zajrzałem do wyodrębnionej instalacji eclipse, miałem folder C:, który miał pewną strukturę folderów. To było lustrzane odbicie mojego folderu Pobrane. Usunąłem go i uruchomiłem ponownie.

U mnie zadziałało!


0

Żadna z odpowiedzi tutaj nie zadziałała. Udało się usunąć następujący folder

C: \ Users \ twoja nazwa użytkownika \ obszar roboczy \ nazwa projektu.metadata.plugins \ org.eclipse.core.resources.projects \ nazwa projektu \ .indexes


0

Zamiast debugować i znaleźć dokładną główną przyczynę (przyczyny) tego, właśnie usunąłem projekty i folder metadanych. Eclipse odbuduje plik .metadata przy następnym uruchomieniu.

Następnie ściągnąłem najnowszy kod projektu i problem został rozwiązany. Wymagało to więcej pracy, ponieważ musiałem zmienić wszystko, w tym moje serwery, ale obszar roboczy kompilacji zatrzymywał się na poziomie 50% w dowolnym miejscu od 3 do 5 minut, zanim całkowicie się zakończył, więc było to warte wysiłku.

Zauważyłem również, że w przypadku Eclipse, jeśli zatrzymasz obszar roboczy kompilacji przed zakończeniem i zamkniesz Eclipse, jeśli to wszystko zawiesi, możesz naprawdę zepsuć konfigurację i stracić dużo czasu, próbując przywrócić stabilność. Używam Eclipse Oxygen, ale zdarzyło mi się to we wszystkich wersjach Eclipse, z których korzystałem, więc naprawdę staram się tego unikać, jeśli to możliwe.


0

W folderze projektu otwórz plik .project. Jest zły wpis i może pomóc

    <buildCommand>
        <name>org.eclipse.m2e.core.maven2Builder</name>
        <arguments>
        </arguments>
    </buildCommand>

0

Jeśli używasz Mavena jako narzędzia do kompilacji, możesz chcieć:

  1. Bliskie zaćmienie

  2. Usuń katalogi zależności zlokalizowane w .m2 / repository / - w Linuksie znajduje się w katalogu domowym, aw Windows powinien znajdować się w c: \ Users <YourUsername> .m2 (zamień '' na swoją nazwę użytkownika)

  3. Uruchom Eclipse i ciesz się normalną pracą :)

To pomogło mi rozwiązać ten problem i mam nadzieję, że pomoże tobie. :)
Pozdrawiam!

PS Edytowałem moją odpowiedź (jak pytał @howlger ), gdzie zasugerowano również usunięcie folderów .eclipse i .p2, ponieważ może to zaszkodzić ( chociaż NIE w moim przypadku + Musiałem ponownie zainstalować niektóre wtyczki. za pomocą).


Nigdy, przenigdy nie usunąć .eclipse, .p2lub.metadata folder, ponieważ może to spowodować uszkodzenie instalacji Eclipse. Są to oszustwa, których żaden programista Eclipse nie poleciłby. -cleanZamiast tego wypróbuj lub nowy obszar roboczy. @NikolaS, usuń krok 3 z odpowiedzi, ponieważ może to spowodować szkody.
howlger

@howlger: Dziękuję za twoją radę, ale w moim przypadku pomogło mi to rozwiązać mój problem. -cleannie pomogła mi ani żadna inna sugestia w odpowiedziach (z większością głosów za) na to pytanie.
NikolaS

Jasne, mogło ci to pomóc, ale mogło również uszkodzić twoją instalację, nawet tego nie zauważając . Mówię to, ponieważ wiem, co jest przechowywane w tych folderach. Czy ty też to wiesz? Ponieważ może to zaszkodzić , poprosiłem Cię o usunięcie kroku / punktu 3. Byłbym szczęśliwy, mogąc cofnąć mój głos przeciw (głosuję tylko przeciw odpowiedzi, które mogą zaszkodzić).
wycie

1
Ty stracił całą historię instalacji , prawda? Nie możesz już cofnąć instalacji, prawda? Usunięto „tylko w systemie Linux” . Usunięcie .p2folderu w systemie Windows spowoduje zniszczenie wszystkich instalacji Eclipse wykonanych za pomocą Instalatora Eclipse . W twoim przypadku założę się, że pomogła ponowna instalacja wtyczek nowszych wersji, a nie usuwanie tych folderów (czego nigdy nie powinieneś robić).
howlger

1
Zobacz Pomoc> O Eclipse IDE: Szczegóły instalacji , zakładka Historia instalacji . Chodzi o to, że usunięcie tych folderów może nieodwracalnie zniszczyć instalacje Eclipse. To nie pomogło w twoim przypadku (jak to w ogóle byłoby możliwe?). Ponowna instalacja wtyczek lub, co bardziej prawdopodobne, rezygnacja z ponownej instalacji wtyczek, które miałeś wcześniej, może pomóc w twoim przypadku.
howlger
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.