Uaktualniłem mój Xcode SDK do wersji 10 zeszłej nocy, a potem stwierdziłem, że nie mogę zbudować.
Otrzymuję ten błąd:
Nie można znaleźć pliku wejściowego kompilacji: '/Users/call01/Library/Developer/Xcode/DerivedData/Comp-Lite-Apps-gytvmossqptokeafrddvvmnlzadk/Build/Products/Debug-iphoneos/SG11.app/SG11
która nie istniała przed moją aktualizacją i kusi mnie, aby wrócić, ale chciałbym pozostać przy wersji 10, jeśli uda mi się rozwiązać ten problem.
W przypadku plików Swift lub plików należących do projektu, takich jak:
Build input file cannot be found: PATH/TO/FILE/FILE.swift
Ten problem może wystąpić, gdy pliki lub foldery zostały usunięte lub przeniesione w projekcie.
Naprawić to:
Przejdź do nawigatora projektów, wybierz swój projekt
Wybierz
Build Phases
kartęW
Compile Sources
sekcji poszukaj plików, na które skarży się XcodeZauważ, że pliki mają złą ścieżkę i usuń je, klikając ikonę z minusem
Ponownie dodaj plik (i), klikając ikonę plusa i wyszukaj w projekcie.
Produkt> Clean Build Folder
Budować
Zazwyczaj te brakujące pliki znajdują się w
Recovered References
folderze Xcode w drzewie projektu (poszukaj paska wyszukiwania w lewym dolnym rogu Xcode i wyszukaj swój narzekający plik):Usunięcie ich z tego folderu może również rozwiązać błąd.
źródło
Dla mnie w Xcode 10 to rozwiązanie zadziałało jak urok. Po prostu przejdź do folderu Odzyskane odniesienia, usuń wszystkie pliki w kolorze czerwonym i dodaj je ponownie z odpowiednim odniesieniem.
źródło
To zadziałało dla mnie w Xcode 10:
źródło
Zabawne, zamknięcie Xcode i ponowne otwarcie może też wystarczyć.
źródło
Powyższe rozwiązanie ostatecznie działa dla mnie; Jednak muszę wykonać kilka dodatkowych czynności, aby ostatecznie skompilować się pomyślnie. (Te dodatkowe kroki były wymagane nawet w Xcode 9.)
źródło
Po prostu sprawdź ścieżkę do pliku .plist w ustawieniach kompilacji swojego celu
źródło
Rozwiązałem ten problem w ten sposób: przejdź do faz budowy swojego projektu (kliknij ikonę projektu u góry, a następnie kliknij Fazy budowy). Wyszukaj tam swój plik. Jeśli tam jest (będzie wyszarzony), usuń go. Następnie wyczyść (shift + alt + command + k) i uruchom! Mam nadzieję, że to pomoże.
źródło
Jeśli błąd mówi, że nie może znaleźć Info.plist i szuka złej ścieżki , wykonaj następujące czynności:
źródło
Żadne z powyższych nie działało dla mnie, ale to:
path = "path/to/file.swift"
do rzeczywistej lokalizacji na dysku i zapisz plik.źródło
otwórz prawy panel nawigacyjny, w którym istnieją pliki twojego projektu LUB JSUT kliknij cmd + 1 Następnie wyszukaj folder „Odzyskane odniesienia” Otwórz wszystkie czerwone pliki (usuń je), a wszystko będzie działać tak dobrze.
źródło
Miałem to przy tworzeniu moich testów jednostkowych. Mogło się tak stać, ponieważ usunąłem przykładowe testy.
Usunąłem pakiet testów jednostkowych, a następnie dodałem go ponownie, jak pokazano na poniższych zdjęciach i wszystko było dobrze.
źródło
Wystąpił ten błąd po zmianie nazwy pliku. W jakiś sposób Xcode nie zmienił poprawnie nazwy rzeczywistego pliku na dysku.
Więc nie był w stanie znaleźć pliku. Czasami pliki są wyróżniane czerwonym kolorem tekstu. W innych przypadkach ikona Swift przed plikiem miała szarą nakładkę.
Poprawka była prosta.
źródło
Miałem podobny problem po aktualizacji do nowej wersji Swift. Przenoszenie plików spowodowało, że mój projekt xcode odwoływał się do elementów, które nie znajdowały się już w katalogu projektu, co powodowało, że nie znaleziono pliku wejściowego kompilacji kodu błędu.
W mojej sytuacji w jakiś sposób miałem wiele plików / obrazów, do których odwoływano się, jak opisano poniżej:
Na powyższym obrazku.
To tutaj w jakiś sposób miałem wiele plików i obrazów, do których odwoływano się z innych folderów, a kompilacja kończyła się niepowodzeniem, ponieważ nie mogli ich już znaleźć. I ja też nie mogłem ich znaleźć! lub jak Xcode wciąż do nich odwołuje się
Mam nadzieję, że to pomoże komuś innemu!
źródło
Miałem ten sam problem. Problem polegał na tym, że nie miałem żadnego pliku w obszarze Cel> Fazy kompilacji> Źródła kompilacji. Problem został rozwiązany po dodaniu co najmniej jednego pliku do Compile Sources.
źródło
Nie to, że zrobiłem coś złego, ale napotkałem ten problem z zupełnie innego powodu i trochę wiem, co go spowodowało.
Wcześniej użyłem Findera i przeciągnąłem plik do katalogu / folderu mojego projektu. I nie przeciągać w Xcode . Aby Xcode włączył ten plik do projektu, musiałem później ponownie przeciągnąć go do Xcode.
Ale kiedy przeszedłem na nową gałąź, która nie miała tego pliku (ani nie musiała), Xcode dawał mi ten błąd:
Wyczyściłem folder kompilacji i usunąłem moje dane pochodne, ale nie działało, dopóki nie uruchomiłem ponownie Xcode.
źródło
To zadziałało dla mnie
źródło
W moim przypadku plik (i katalog), o którym wspominał XCode, był nieprawidłowy, a problem zaczął się pojawiać po połączeniu Gita ze stosunkowo dużą gałęzią. Aby to naprawić, wykonałem następujące kroki:
Mam nadzieję, że te kroki komuś pomogą.
źródło
W moim przypadku miałem skrypt budujący, który wygenerował plik binarny .app (Buck). Skrypt kompilacji Buck działał równolegle z krokiem kompilacji Swift Embed. Ponieważ plik binarny .app nie został jeszcze wygenerowany, krok Swift zakończył się niepowodzeniem.
W moim skrypcie kompilacji dodałem
"$BUILD_PRODUCTS_DIR/$EXECUTABLE_PATH"
pod"Output Files"
.To mówi nowemu systemowi kompilacji Xcode, że ten skrypt wyprowadzi plik binarny aplikacji, a Xcode z kolei zapewni synchronizację wszystkich kroków kompilacji, które zależą od tego artefaktu.
źródło
źródło
Xcode narzekał na plik XIB. Uruchomiłem go, przechodząc do Project -> Build Phases -> Copy Bundle Resources, usuwając „problematyczny” XIB, czyszcząc (CMD + Shift + K), budując i dodając ponownie.
źródło
Istnieje również jedna możliwość, że czasami podczas przenoszenia plików do innego folderu, a zwłaszcza w przypadku przenoszenia
info.plist
do innego folderu, trzeba określić lokalizację tego pliku. Aby rozwiązać ten problem, po prostu kliknij niebieską ikonę swojego projektu u góry, a zamiast nazwy projektu i identyfikatora pakietu zobaczysz przycisk, kliknij go i znajdźinfo.plist
tam plik, wyczyść i skompiluj.źródło
Natknąłem się na ten problem wkrótce po uaktualnieniu do Xcode 10, ale to nie był problem.
Próbowałem zmienić system kompilacji, ale to dało mi osobny błąd, który oznaczał to samo. Mówiąc ogólnie: „Nie można znaleźć pliku X”.
Istnieje wiele rzeczy do sprawdzenia, gdy nie można znaleźć pliku.
To miło ze strony Apple, ale nie zawsze działa.
Fazy kompilacji Źródła kompilacji Na tej liście mogą znajdować się metadane dla pliku, który projekt ma skompilować, ale plik w rzeczywistości nie istnieje i próbuje znaleźć plik w podanej ścieżce. Na tej liście zostanie wyszarzona, usuń je i ponownie dodaj, przełączając docelowe zależności pliku lub ręcznie usuwając go i przeciągając.
Ścieżka do pliku Sprawdź dwukrotnie ścieżkę do pliku, do którego jest drukowany błąd, oraz ścieżkę do pliku w wyszukiwarce. Możesz to łatwo zobaczyć, klikając plik w Xcode i zaznaczając zakładkę „Pokaż inspektora plików” (zakładka znajdująca się najbardziej po lewej stronie). Jeśli te ścieżki są poprawne, to jesteś dobry!
Przyciemnione pliki w twoim projekcie, które nie są w odzyskanych odniesieniach ani na czerwono Ten wkurzył mnie, ponieważ nie jest oczywiste, co się stało, ale w zasadzie, jeśli wejdziesz do wyszukiwarki i przeniesiesz plik w inne miejsce bez aktualizacji odniesienia w projekcie zgłosi błąd, ponieważ plik już tam nie istnieje. Jedyną wskazówką, jaką znalazłem, jest to, że plik w zakładce "Project Navigator" (skrajna lewa zakładka) jest nieznacznie przyciemniony, ale kiedy idziesz do usunięcia tego pliku Xcode nie monituje o usunięcie odniesienia lub wysłanie do śmieci. Możesz to naprawić, usuwając plik i dodając go ponownie do projektu lub przechodząc do zakładki „File Inspector” i klikając ikonę folderu obok ścieżki i zmieniając ją w odpowiednią lokalizację.
Tak czy inaczej, błąd wskazuje, że nie może znaleźć pliku, przejście na stary system kompilacji jest rozwiązaniem bardziej konkretnym. Jako programiści rozumiemy, że kompilator chce tylko, aby artefakt był wymieniony na końcu ścieżki pliku. Gdzieś ścieżka nie jest poprawna! Musimy się dowiedzieć, gdzie to jest!
Mój problem został rozwiązany z punktem 4 wymienionym powyżej. Mam nadzieję, że to komuś pomoże.
źródło
Plik> Ustawienia projektu> Zmień systemy kompilacji na starsze systemy kompilacji
źródło
W moim przypadku przypadkowo usunąłem jeden folder xcodeproj innej firmy, którego użyłem w mojej aplikacji.
źródło
Jeśli próbowałeś profilowania, ale to nie zadziałało, a teraz nie możesz budować, przejdź do panelu Cel (za pomocą ikony projektu), przełącz na kartę Ustawienia kompilacji, wyszukaj PROFIL - i ustaw CLANG_USE_OPTIMIZATION_PROFILE na „Nie”.
źródło
W moim przypadku utworzyłem nowy cel testowy i usunąłem domyślny plik Swift, więc pozostał tylko
info.plist
. Dodanie nowego pliku rozwiązało ten problem.źródło