Jonathan sugeruje tutaj: Xcode Obejmuje pliki .xib, które zostały usunięte! że wyczyszczenie wszystkich celów i opróżnienie pamięci podręcznej rozwiąże problem z Xcode, w tym usuniętymi plikami .xib, ale nie mogę znaleźć sposobu na opróżnienie pamięci podręcznej w Xcode 4.
Jak to zrobić w Xcode 4?
Odpowiedzi:
Command-Option-Shift-K, aby wyczyścić folder kompilacji. Jeszcze lepiej, ręcznie zamknij Xcode i wyczyść ~ / Library / Developer / Xcode / DerivedData . Usuń całą jego zawartość, ponieważ istnieje błąd, w którym Xcode uruchomi starą wersję twojego projektu, który gdzieś tam jest. (Xcode 4.2 wyświetli folder Dane pochodne: wybierz Okno> Organizator i przejdź na kartę Projekty. Kliknij strzałkę w prawo po prawej stronie nazwy folderu Dane pochodne).
W symulatorze wybierz kolejno Symulator iOS> Resetuj zawartość i ustawienia.
Wreszcie, dla kompletności, możesz usunąć zawartość folderów / var / ; tam też dzieje się trochę buforowania.
OSTRZEŻENIE: Usunięcie folderów / var / może powodować problemy, a po tym może być konieczna naprawa lub ponowna instalacja systemu operacyjnego.
EDYCJA: Właśnie dowiedziałem się, że jeśli boisz się zmagać z / var / folder / , możesz użyć następującego polecenia w Terminalu, aby usunąć w bardziej ukierunkowany sposób:
EDYCJA: W przypadku niektórych problemów związanych z Swift uznałem za przydatne usunięcie ~ / Library / Caches / com.apple.dt.Xcode . W ten sposób tracisz dużo, np. Zapasowe kopie pobranych zestawów dokumentów, ale może być tego warte.
źródło
Command-Option-Shift-K powinien to zrobić. Alternatywnie, przejdź do menu produktu, naciśnij klawisz opcji, teraz opcja „Wyczyść” zmieni się na „Wyczyść folder kompilacji ...” wybierz tę opcję.
źródło
Oprócz wykonania poniższych czynności może wystąpić ten problem, jeśli pliki Storyboard aplikacji są zlokalizowane. Najpierw wykonaj każdą z tych czynności:
DerivedData
folder w ~ / Library / Developer / Xcode / DerivedDataTo, co w końcu zadziałało, to ponowne wygenerowanie plików lokalizacji scenorysu i usunięcie angielskiej lokalizacji (co było niepotrzebne, ponieważ podstawowe ustawienia regionalne to angielski). Aby ponownie załadować ciągi Storyboard, zapoznaj się z tą odpowiedzią na StackOverflow .
Zauważyłem, że nietekstowe części mojej Storyboard są aktualizowane, ale nie zlokalizowany tekst. Jeśli masz lokalizację w swojej aplikacji, zalecamy sprawdzenie, czy Twoje lokalizacje są zaktualizowane (nawet jeśli są to
.strings
pliki).źródło
/var/folders/
może powodować poważne problemy i może spowodować konieczność ponownej instalacji OSx z konsoli odzyskiwania!Znalazłem inny sposób oprócz polecenia + opcja + Shift + K. W XCode 4.2 znajduje się organizer, który można otworzyć za pomocą ikony w prawym górnym rogu. Stamtąd możesz wyczyścić wszystkie archiwa i zapisane opcje projektu. Pomogło mi to w mojej sytuacji (widziałem stare usunięte pliki w pakiecie głównym).
źródło
Wyciągam włosy z głowy, ponieważ myślałem, że mam ten sam problem. Podczas tworzenia aplikacji nie uzyskałem takiego samego wyniku na moim iPhonie, jak na symulatorze.
Problem polegał na tym, że jakoś stworzyłem zlokalizowaną wersję pliku MainStoryboard.storyboard. Więc kiedy uruchomiłem aplikację na telefonie, pokazała wersję duńską ... a symulator pokazał wersję angielską.
Tak, jestem nowy! :)
źródło
Aby usunąć wszystkie pochodne dane i moduł pamięci podręcznej,
/var/folders
użyj tego małego skryptu ruby .To właśnie rozwiązało
fatal error: malformed or corrupted AST file: 'Unable to load module "/var/folders/
dla mnie błąd.źródło
Miałem pewne problemy z awarią Xcode 5.1, kiedy otworzyłem okno dokumentu.
Nie jestem tego pewien, ponieważ aktualizowałem również zestawy dokumentów, kiedy otworzyłem okno.
Cóż, w Xcode 5 katalog modułów znajduje się teraz w folderze danych pochodnych, którego z oczywistych względów nie usunąłem. Usunąłem zawartość ~ / Library / Developer / Xcode / DerivedData / ModuleCache oraz ~ / Library / Preferences / com.apple.Xcode.plist i wszystko wydaje się działać po ponownym uruchomieniu Xcode.
źródło
Podczas korzystania z „Modelu danych” w inspektorze są dostępne opcje generowania klas, dla mnie tak było, ponieważ istniała już klasa o istniejącej nazwie.
Codegen: rozwiązałem to dla mnie.
źródło
Moje „DerivedData” z Xcode 10.2 i Mojave były tutaj:
MacHD / Users / [MyUser] / Library / Developer / Xcode
źródło
Musisz uważać na plik xib. Próbowałem wszystkich powyższych i nic nie działało dla mnie. Używałem niestandardowych przycisków UIB zdefiniowanych w xib i zdałem sobie sprawę, że może to być związane z faktem, że przypisałem tam atrybuty, które nie zmieniały się programowo. Jeśli zdefiniowałeś tam obrazy lub tekst, usuń je. Kiedy to zrobiłem, moje zmiany programowe zaczęły obowiązywać.
źródło
Oto moje rozwiązanie skryptu powłoki , które usuwa dane pochodne i czyści zasoby buforowane projektu dla Xcode 4, 5 i 6.
Czasami po prostu wywołanie rm -rf w katalogu danych pochodnych pozostawia trwały plik lub dwa, ale mój skrypt zapętla się, dopóki wszystkie pliki nie zostaną usunięte.
źródło
Próbowałem prawie wszystkiego, ale nie mogłem nic poradzić, co pomogło mi wyłączyć SIP (System Integration Protection) n to działa, nie wiem, co się dzieje, kiedy i jak, ale gdzieś plik systemowy się gdzieś myli i powoduje to ... chociaż może istnieć ryzyko oczywiście wyłączyć to
Oto jak
1. Włącz komputer Mac i przytrzymaj klawisze [polecenie] + [R], aby uzyskać dostęp do partycji odzyskiwania.
2. Na partycji odzyskiwania kliknij Narzędzia na pasku menu, a następnie wybierz Terminal.
3.Wprowadź następującą komendę w Terminalu i naciśnij klawisz Enter, aby ją wykonać: csrutil disable
4.Po wykonaniu polecenia wyjdź z terminalu i uruchom ponownie komputer Mac. Po ponownym zalogowaniu się do systemu OS X protokół SIP zostanie wyłączony.
źródło