2011-11-14 17 views
32

Ugh! My Eclipse tkwi w nieskończonej pętli:Pętle Eclipse bez końca: Wywołanie "Konstruktora projektu Maven"

  • żadne operacje, aby wyświetlić w tym czasie
  • Odświeżanie Workspace budynku
  • Workspace. Wywołanie "Maven Project Builder" na stronie/MobileWebApp

Obszar roboczy nigdy nie minie 58%.

Szczegóły:

Google GWT dostarcza próbkę aplikacji MobileWebApp. One suggest adding it to Eclipse za pośrednictwem Plik> Import> projekty Checkout Maven z SCM.

Postępowałem zgodnie z instrukcjami podanymi w this blog, aby dodać wtyczki dla m. Ine, subclipse i m2e-subclipse.

Po zainstalowaniu wtyczek zaimportowałem przykładowy projekt za pomocą opcji Plik> Importuj> Projekty Checkout Maven z aplikacji SCM i this URL.

Import wydawał się zakończyć w porządku, a Eclipse nie wyświetla żadnych znaczników. Ale teraz mam to nieskończone odświeżanie i budowanie i nie mam pojęcia, co go powoduje lub jak to naprawić.

Wersje:

  • Eclipse Indigo 3,7
  • m2e złącze 1.0.100
  • m2e do budowy wspomagających maven-wtyczki 0,14
  • Maven SCM Handler Subclipse 0,13
  • Subclipse 1,6 .18
  • Adapter klienta Subclipse 1.6.12

Każda rada jest bardzo doceniana.

Odpowiedz

16

udało mi się rozwiązać ten problem poprzez kliknięcie prawym przyciskiem na projekt i wybierając Uruchom jako> Maven Clean

+2

Dziękuję, to doprowadzało mnie do szału. Myślę, że moim problemem była wtyczka generowania kodu jaxb dla mavena. Kiedy dodałem wygenerowany katalog źródeł, problem ten zaczął się. –

+0

Musiałem również automatycznie wyłączyć Build Project, aby wykonać polecenie Maven Clean. Kiedy już to zrobiłem, ponownie włączyłem automatyczne kompilacje i wykonałem aktualizację Maven, wróciłem do pracy. Dzięki za to. – bdetweiler

0

to kilka razy pracował dla mnie, gdy mogę zmienić JAVA_HOME do nowej lokalizacji

16

Otworzyłam modułu .project plik. Były dwa wpisy:

<buildCommand> 
    <name>org.maven.ide.eclipse.maven2Builder</name> 
</buildCommand> 
<buildCommand> 
    <name>org.eclipse.m2e.core.maven2Builder</name> 
</buildCommand> 

usunąłem org.eclipse.m2e.core.maven2Builder wejście i magicznie rozwiązaniu problemu.

+0

To działa dla mnie. Maven clean nie działał. – Sigrist

+0

Miałem 2 natury: org.eclipse.m2e.core.maven2Nature i org.maven.ide.eclipse.maven2Nature. Usuwanie org.maven.ide.eclipse.maven2Nature magicznie naprawił problem dla mnie. – JasonPlutext

+0

Tak, to działało dla mnie :) – SuRa

7

Rzeczywiście rozwiązałem problem spowodowany przez wtyczkę jaxb. Jeśli forceRegenerate jest ustawione na true, otrzymasz pętlę kompilacji w Eclipse (Kepler w moim przypadku).

Sprawdź, czy funkcja forceRegenerate ma wartość false w Twojej wtyczce maven-jaxb.

<configuration>         
    <forceRegenerate>false</forceRegenerate> 
</configuration> 
10

I był już ten sam problem w Eclipse Project (Juno) Maven, że nie miał nic wspólnego z GWT - to po prostu ciągle świeże i "Wywoływanie Maven Projekt Builder".Przejście do widoku Postęp i zażądanie anulowania wpisu postępu (kliknięcie tego czerwonego przycisku zatrzymania po prawej stronie) nie pomogło.

Projekt, w którym budowniczy utknął, był zawsze taki sam, a kilka poziomów głęboko w zestawie projektów z wieloma pomaniami w czasie zaćmienia.

Co ostatecznie rozwiązać to dla mnie po prostu wchodząc że szczególności projektu Properties>Builders i odznaczając Maven Project Builder (ale utrzymując Java Builder sprawdzone tak, że nadal będzie auto-build, gdy kod zmienione). Po prostu zignorowałem ostrzeżenie o tym, że jest to "zaawansowana operacja" i prawdopodobnie "ma wiele skutków ubocznych" - pomyślałem, że to nie może być bardziej irytujące niż ten ciągły cykl odświeżania. Nadal nie jestem pewien, co było przyczyną tej pętli, ale to powstrzymało mnie. I od tego czasu nie miałem żadnych problemów.

0

Otworzyłem plik .project mojego modułu. Były dwa nadmiarowe wpisy i usuwanie jeden pomógł

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

M2e, nawet w Mars Eclipse, wydaje się jak nieskończony budynek.

W moim przypadku nie ma czegoś takiego jak powtarzające się polecenia kompilacji, wymienione poniżej. Jedyną rzeczą, która wydaje się działać, gdy drzewo projekt jest gigantyczny jest:

  1. otwarty zaćmienie
  2. Wyłącz zbudować automatycznie, jak tylko otworzyć zaćmienie
  3. odświeżenia obszaru roboczego i wyzwalania Manual Crtl + B lub skompiluj wszystko.
  4. Gdy zaćmienie jest spełnione, że buduje pełne drzewo projektu ... lepiej mieć cztery podstawowe maszyny lub będziesz czekać chwilę, możesz precyzyjnie włączyć opcję budowania automatycznie. Wydaje się, że Eclipse nie idzie w szał po budynku. Nadal będzie trwało skanowanie niektórych folderów, ale aktywowanie kompilacji automatycznie - gdy już to wszystko zbudujesz - jest znacznie szybsze niż nowa kompilacja, a na końcu zaćmienie staje się stabilnym budowaniem w nieskończoność.

przeciwnym razie utkniesz z nieaktualnych mvn eclipse:eclipse ... i musiał zrezygnować z korzystania z poleceń od wewnątrz maven Zaćmienie echosystem. Wydaje się, że M2e ma naprawdę gigantyczne problemy ze współpracą z bestią.

Nadal używam m2e, ale muszę powiedzieć, że jest to 100 razy trudniejsze do połknięcia m2e niż integracja maven w netbeans. Z drugiej strony, zaćmienie jest znacznie szybsze dla bardzo dużej bazy kodu. Wybierz swoją truciznę, zawsze będziesz ugryziony.

<?xml version="1.0" encoding="UTF-8"?> 
    <projectDescription> 
     <name>rootPom</name> 
     <comment></comment> 
     <projects> 
     </projects> 
     <buildSpec> 
      <buildCommand> 
       <name>org.eclipse.m2e.core.maven2Builder</name> 
       <arguments> 
       </arguments> 
      </buildCommand> 
     </buildSpec> 
     <natures> 
      <nature>org.eclipse.m2e.core.maven2Nature</nature> 
     </natures> 
    </projectDescription> 
1
  1. I skonfigurowany zmienną środowiska Java odpowiednio (tj JAVA_HOME).
  2. Dodano również ścieżkę jdk do zmiennej środowiskowej path, w mojej ścieżce przypadku znajduje się C:\Program Files\Java\jdk1.8.0_101\bin.
  3. Dodałem także ścieżkę do strony głównej JDK w preferencjach "Zainstalowane środowiska JRE" w środowisku Eclipse.

Nie jestem pewien, który z nich rozwiązał problem, nie widzę teraz automatycznej kompilacji.

Po tym, stworzyłem nowy projekt maven. Który był ustawiony do używania domyślnie 1.7, ten projekt również spowodował nieskończoną pętlę. Ale 1.7 nie jest skonfigurowany w Eclipse. Uaktualnienie właściwości projektu w celu użycia wersji java dostępnej w moim środowisku Eclipse rozwiązało problem.

0

Ten problem występuje również, gdy użytkownik nie może usunąć pliku, który może mieć zbyt długą nazwę. Możesz więc ręcznie przejść do folderu docelowego i wyczyścić go i ponownie uruchomić Eclipse.

0

Zrobiłem coś podobnego do odpowiedzi Amos M. Carpenter (https://stackoverflow.com/a/28713259/4470352)

Ale też stworzyłem nowy niestandardowy budowniczy z następującej konfiguracji:

  1. Wybierz typ konfiguracji -> Program
  2. Lokalizacja (pole tekstowe) < = D: \ apache-maven-3.3.9 \ bin \ mvn.cmd (moja niestandardowa aplikacja)
  3. Katalog roboczy (pole tekstowe) < = $ {workspace_loc:/project}
  4. Argumenty (obszar tekstu)
    • < = czyste kompilacji test-DproxySet = true -DproxyHost = a.proxy.host -DproxyPort = 8080

To kompiluje mi projekt bez postępu pasek, ale widzę postęp w konsoli tekstowej.

Problem w moim przypadku polega na tym, że za każdym razem, gdy kompiluję ten projekt, pobieram plik WSDL i muszę podać konfigurację proxy. Kiedy wtyczka budowniczy projektu maven próbuje skompilować mój projekt, zawiedzie i zaczyna ponownie w pętli.

Próbowałem ustawić go w pliku konfiguracyjnym settings.xml maven, ale nie działa dla mnie i zapewniając konfigurację proxy w wierszu poleceń działa.

Tworzenie niestandardowego konstruktora wykonuje to zadanie i jest nowym podejściem.

Mam nadzieję, że ci to pomoże.

Powiązane problemy