Projekt nie może zostać skompilowany, dopóki błędy ścieżki kompilacji nie zostaną rozwiązane.

100

Podczas kompilowania projektu na Androida w Eclipse 3.4.2 otrzymuję komunikat Nie można zbudować projektu, dopóki błędy ścieżki kompilacji nie zostaną rozwiązane.

Mam tymczasowe rozwiązanie z bloga http://www.scottdstrader.com/blog/ether_archives/000921.html

Rezolucja polegała na wymuszeniu ponownego zapisania wybranych projektów (i ich plików .classpath):

  1. Otwórz właściwości projektu
  2. Wybierz opcję Ścieżka budowania Java> Biblioteki
  3. Dodaj nową, dowolną bibliotekę (do usunięcia później)> OK
  4. Poczekaj, aż obszar roboczy się odświeży (lub wymuś odświeżenie projektu)
  5. Błędy znikną
  6. Usuń fikcyjną bibliotekę

Jedyne inne odniesienia, jakie udało mi się znaleźć, dotyczyły drobnych zmian w zawartości pliku .classpath.

Czy jest jakieś trwałe rozwiązanie tego problemu?

yokks
źródło
Jakie są rzeczywiste błędy ścieżki kompilacji, które widzisz? Czy próbowałeś też nowszego zaćmienia? 3.4 jest już nieco przestarzały.
Konstantin Burov
2
Wydaje się, że problem dotyczy zaćmienia i występuje również w wersji 3.5 na Macu. Ilekroć chcę zbudować projekt na Androida, usuwam folder gen (wygenerowany automatycznie) i czyszczę projekt.
bhups
3
Eclipse czasami utknie i nigdy nie usunie błędu. Spróbuj usunąć go z karty błędów i ponownie zbudować projekt. Pracował dla mnie wiele razy
Austyn Mahoney
1
Helios Service Release 2, właśnie to widziałem po zaimportowaniu projektu do obszaru roboczego. Rozwiązanie „fikcyjna biblioteka” było jedynym działającym rozwiązaniem, jakie udało mi się znaleźć.
paiego
1
+1 pomogło mi kontynuować pracę, po godzinie sprzątania pokus .. prosty sposób dodawania i sukcesywnego usuwania atrapy biblioteki zadziałał.
morde

Odpowiedzi:

130

Czy próbowałeś użyć opcji Projekt> Wyczyść ... z menu? Wymusi to nową kompilację na wybranych projektach w Eclipse.

TK Gospodinov
źródło
Skopiowałem zainstalowany pakiet SDK z innego systemu. teraz działa dobrze!
yokks
4
Miałem ten sam błąd. Eclipse się zawiesił, a kiedy wróciłem, powiedział, że wystąpił błąd ścieżki budowania i nie chciał omawiać, co to było. Żadne czyszczenie ani odświeżanie tego nie naprawiłoby. Ta fałszywa „fałszywa biblioteka” była jedyną rzeczą, która działała!
JonLeah
4
Żadna ilość czyszczenia nie zrobiła tego za mnie, próbowałem usunąć / dodać dodatkowe pliki JAR, jak podano w innych odpowiedziach. Nie zamknąłem Eclipse (ADT) na siłę, więc przestrzeń robocza była w porządku. Okazuje się, że prosty restart Eclipse załatwił sprawę.
cassi.lup
prostszym sposobem, jaki widziałem, jest wprowadzenie niewielkiej zmiany w kolejności importu, a zaćmienie odbuduje ścieżkę budowania i wszystkie błędy powinny zostać naprawione.
user2757415
57
1-Right CLick on your project folder, Choose Build Path > Configure Build Path
2-Select Libraries Tab and delete any arbitrary library present there.
3-Click on Add Library option, Select JRE System Library and click Next.
4-Choose last Radiobutton option Workspace default JRE and click Finish.
5-press f5 for refresh.
6-run ur program .
user2318214
źródło
1
haha, omg spowodowało to jeszcze więcej problemów i błędów. Teraz brakuje mi artefaktu org.springframework: spring-context: jar: 4.3.14.RELEASE
Zack Zilic
9

Dzieje się tak, gdy biblioteki dodane do projektu nie mają poprawnej ścieżki.

  1. Kliknij prawym przyciskiem myszy swój projekt (z eksploratora pakietów)
  2. Mam ścieżkę kompilacji -> skonfiguruj ścieżkę kompilacji
  3. Wybierz zakładkę biblioteki
  4. Napraw błąd ścieżki (podaj poprawną ścieżkę), edytując błędy JAR lub klasy
UŻYTKOWNIK
źródło
6

To naprawiło to dla mnie ...

Miałem problem z moim plikiem spring-core.jar. Usunąłem cały katalog wydania znajdujący się tutaj. (Jestem na wygranej 10).

C: \ Users ********. M2 \ repository \ org \ springframework \ spring-core \ 4.3.1.RELEASE

Kliknąłem prawym przyciskiem myszy projekt> Maven> Aktualizuj projekt i mój wykrzyknik zniknął. Żadnych więcej problemów.

Oto źródło, w którym znalazłem informacje:

http://crunchify.com/cannot-be-read-or-is-not-a-valid-zip-file-how-to-fix-maven-build-path-error-with-corrupted-jar-file/

BustedSanta
źródło
5

To działa dla mnie: zamknij projekt, a następnie otwórz go ponownie , to zmusi zaćmienie do postrzegania go jako świeżego projektu i wykryje poprawną ścieżkę budowania.

aimhaj
źródło
4

Żadna z pozostałych odpowiedzi nie działała dla mnie. Nawet po naprawieniu problemów ze ścieżką kompilacji, odświeżeniu, wyczyszczeniu, odbudowaniu i ponownym uruchomieniu (zarówno zaćmienia, jak i komputera), nadal pojawiał się mały czerwony wykrzyknik.

Naprawiłem to, zamykając projekt (kliknij prawym przyciskiem myszy, zamknij projekt) i otwierając go ponownie (dwukrotnie klikając zamknięty projekt), co wydawało się zmuszać Eclipse do „zauważenia”, że problemy ze ścieżką budowania zostały naprawione.

Kevin Workman
źródło
3

W przypadku mojego Mac OSX Eclipse wykonałem następujące kroki:

  1. Kliknij prawym przyciskiem myszy swój projekt, wybierz Ścieżka budowania > Konfiguruj ścieżkę budowania
  2. Wybierz kartę Biblioteki i usuń dowolną bibliotekę lub cokolwiek innego powodującego błędy w ścieżce budowania.
  3. Kliknij przycisk Dodaj bibliotekę , wybierz bibliotekę systemową JRE i kliknij Dalej.
  4. Wybierz ostatnią opcję Radiobutton Domyślne środowisko JRE obszaru roboczego i kliknij przycisk Zakończ.
  5. Oczyść i zbuduj swój projekt.
Nocna Furia
źródło
1

Widziałem ten problem kilka razy (mam go teraz ponownie na moim domowym komputerze z Eclipse 4.2).

Wymuszenie ponownego zapisywania (poprzez zmianę ścieżki klas, np. Poprzez dodanie biblioteki, zapisanie, zmianę z powrotem) działa tymczasowo. Ale problem wraca po ponownym uruchomieniu Eclipse :(

Nukowanie obszaru roboczego Eclipse z orbity naprawi to na stałe (do następnego razu). Ale musi być lepszy sposób!

Daniel Winterstein
źródło
1

Na moim Macu to właśnie zadziałało

  1. Projekt> Wyczyść (błędy i ostrzeżenia pozostaną lub wzrosną po tym)
  2. Zamknij Eclipse
  3. Otwórz ponownie Eclipse (błędy pojawiają się na chwilę, a następnie znikają, ostrzeżenia pozostają)

Jesteś gotowy do pracy i możesz teraz uruchomić swój projekt

DamongoCoder
źródło
1

Oto, co zadziałało dla mnie:

  1. Przejdź do ~/.m2/repositoryi usuń wszystko tam, uruchamiając rm -rf. Upewnij się, że wszystko zostało usunięte.
  2. Ponownie uruchom zaćmienie lub STS
  3. Kliknij prawym przyciskiem myszy projekt -> Maven -> aktualizuj projekt .
Vikram3891
źródło
0

po prostu sprawdź, czy w Twojej bibliotece zostały dodane niepotrzebne Jary, czy nie. jeśli tak, po prostu usuń te słoiki z biblioteki i raz wyczyść projekt. U mnie to zadziałało.

user3133845
źródło
0

W Eclipse to działało dla mnie: projekt kliknięcia prawym przyciskiem myszy. -> Właściwości -> Sekcja biblioteki; Dodaj (w ogóle dowolną bibliotekę) -> wybierz bibliotekę i kliknij usuń -> naciśnij OK.

jimbob
źródło
0

Napotkałem ten irytujący problem z frameworkiem Play. Byłoby miło, gdyby istniał sposób, aby dowiedzieć się, z jakich błędów kompilacji Eclipse jest niezadowolony, ale nie powie ci. W jednym projekcie udało mi się zamknąć projekt, odbudować konfigurację Eclipse za pomocą sbt eclipsei ponownie otworzyć. Przy prawie identycznym projekcie to nie zadziałało. Ale usunięcie projektu, odbudowanie konfiguracji Eclipse za pomocą sbt eclipsei importowanie załatwiło sprawę.

cayhorstmann
źródło
0

zdobądź cmd i uruchom

mvn eclipse:eclipse

chamzz.dot
źródło
0

Jeśli uważasz, że zrobiłeś wszystko poprawnie, ale Eclipse nadal narzeka na słoiki, odśwież folder, w którym znajdują się słoiki i upewnij się, że eclipse wie, że zostały dodane do projektu. Samo określenie ścieżki pliku (najwyraźniej) nie wystarczy

Laurens
źródło
0

Kilka razy spotkałem się z tym problemem i wykonanie poniższych czynności rozwiązało oba problemy. 1. Przejdź do C: \ Users \ 2. znajdź folder „.m2” i usuń go.

  1. Teraz przejdź do konkretnego projektu w zaćmieniu i kliknij prawym przyciskiem myszy projekt> Maven> Aktualizuj projekt

poczekaj, aż projekt zostanie zaktualizowany, aw moim przypadku wykonanie powyższych kroków rozwiązało oba razy.

sai charan
źródło
0

Otrzymałem dodatkowe ostrzeżenie

The compiler compliance specified is 1.6 but a JRE 1.8 is used

Usunięcie tego ostrzeżenia sprawi, że błąd również zniknie. Kroki są następujące:

Kliknąłem go prawym przyciskiem myszy, a następnie kliknąłem Quick Fix. W otwartym oknie dialogowym wybrałem Open the Compiler Compliance property pagei kliknąłem Finishprzycisk.

(To jest to samo, co Java Compilersekcja).

W tym oknie dialogowym znalazłem listę Compiler compliance levelrozwijaną, zmieniłem 1.6na 1.8i kliknąłem Apply and close.

Otrzymałem okno wiadomości z Compiler Settings Changedpytaniem, czy chcę Build the project now?. Kliknąłem Yes.

Błąd ścieżki kompilacji zniknął.

Kinjal Dixit
źródło
-1

Idź do projektu => Buduj automatycznie . Upewnij się, że jest zaznaczone

HimalayanCoder
źródło