2015-09-03 16 views
25

Umieściłem kolejny projekt w moim głównym projekcie, tym o nazwie OAuthSwift, który zawierał strukturę. Kiedy próbowałem go zbudować, mam ten błąd:Nieprawidłowy plik nakładki na system plików wirtualnych

<unknown>:0: error: invalid virtual filesystem overlay file '/Users/gabrieljones/Library/Developer/Xcode/DerivedData/Paul's_Console-bbbxnfmomaaurfeabxmnchoqmwpa/Build/Intermediates/OAuthSwift.build/Debug/OAuthSwiftOSX.build/unextended-module-overlay.yaml'

<unknown>:0: error: clang importer creation failed

Po kilku badań, próbowałem wszystkiego wszyscy ludzie mówili - otworzyłem plik o nazwie all-product-headers.yaml i spodziewałem się, że zawierają ten (co website powiedział) :

{ 
    'version': 0, 
    'case-sensitive': 'false', 
    'roots': [ 

lecz zawierała ona następująco:

{ 
    'version': 0, 
    'case-sensitive': 'false', 
    'roots': [ 
    { 
     'type': 'directory', 
     'name': "/Users/gabrieljones/Library/Developer/Xcode/DerivedData/Paul's_Console-bbbxnfmomaaurfeabxmnchoqmwpa/Build/Products/Debug/OAuthSwiftOSX.framework/Headers", 
     'contents': [ 
     { 
      'type': 'file', 
      'name': "OAuthSwiftOSX-Swift.h", 
      'external-contents': "/Users/gabrieljones/Library/Developer/Xcode/DerivedData/Paul's_Console-bbbxnfmomaaurfeabxmnchoqmwpa/Build/Products/Debug/OAuthSwiftOSX.framework/Versions/A/Headers/OAuthSwiftOSX-Swift.h" 
     }, 
     { 
      'type': 'file', 
      'name': "OAuthSwiftOSX.h", 
      'external-contents': "/Users/gabrieljones/Desktop/Coding/Xcode/Paul's Console/OAuthSwift-master-11/OAuthSwiftOSX/OAuthSwiftOSX.h" 
     } 
     ] 
    }, 
    { 
     'type': 'directory', 
     'name': "/Users/gabrieljones/Library/Developer/Xcode/DerivedData/Paul's_Console-bbbxnfmomaaurfeabxmnchoqmwpa/Build/Products/Debug/OAuthSwiftOSX.framework/Modules", 
     'contents': [ 
     { 
      'type': 'file', 
      'name': "module.modulemap", 
      'external-contents': "/Users/gabrieljones/Library/Developer/Xcode/DerivedData/Paul's_Console-bbbxnfmomaaurfeabxmnchoqmwpa/Build/Intermediates/OAuthSwift.build/Debug/OAuthSwiftOSX.build/module.modulemap" 
     } 
     ] 
    } 
    ] 
} 

Tak, zmieniłem ją z wersją miałem słuszne:

{ 
'version': 0, 
'case-sensitive': 'false', 
'roots': [] 
} 

A następnie go zablokowałem, ale nie udało mi się zapisać błędu pliku jako DOBRZE, ponieważ wystąpił błąd pliku nakładki wirtualnego systemu plików. Czy ktoś może pomóc?

+0

Występuje ten sam problem. Czy znalazłeś jakieś rozwiązanie? Tks. – nanospeck

Odpowiedz

26

Hej, mam przeczucie, co do tego: Myślę, że może to być przypadek, w którym Xcode jest zepsuty, gdy w nazwie docelowej znajdują się znaki niealfanumeryczne. Mój projekt miał również i apostrof w nazwie docelowej

Ciebie:/Xcode/DerivedData/Paul's_Console

Mine:/Xcode/DerivedData/Lord's_Prayer

można spróbować zmiana nazwy celu. Mam wskazówkę dotyczącą myśli z here.

+0

Dzięki, popatrzę na to. – brimstone

+2

To prawda. Usuń apostrofy. Ponadto, wydaje się, że nie podoba się również biała przestrzeń w nazwie celu. – bowditch

+2

Jestem zdumiony za każdym razem, ile czasu i bólu głowy SO oszczędza mi, dzięki za podpowiedź! Czy ktoś zgłosił zgłoszenie błędu? –

3

Wygląda na to, że jeśli jakakolwiek pozycja na ścieżce zawiera pewne znaki niealfanumeryczne, wówczas napotkasz ten problem.

Napotkałem ten problem, ponieważ nazwa mojego schematu Xcode zawierała apostrof. Nazwa mojego celu była całkowicie wolna od znaków niealfanumerycznych. Usunięcie apostrofu pozwoliło mi zbudować.

Dziękuję nanospeck za wskazówkę, która doprowadziła do tego odkrycia.

+1

Złożyłem raport o błędzie do Apple. Dzięki za pomoc. – brimstone

+0

Potwierdzenie, że nadal nie jest ustalona na 25.10.2016 –

3

Ten sam problem wystąpił podczas archiwizowania mojego projektu, ale można pozbyć się tego problemu, usuwając DerivedData aplikacji.

Poniżej przedstawiono kroki, aby usunąć DerivedData:

1) Wybierz z menu okna Organizer z Xcode.

2) Teraz musisz wybrać kompilacje jeden po drugim.

3) Można usunąć wybraną kompilację, naciskając przycisk kasowania na klawiaturze.

Spowoduje to wyczyszczenie wszystkich danych pochodnych dla projektu, a teraz jesteś gotowy, aby iść dalej. Miłej zabawy :)

33

Napotkali ten problem losowo podczas ponownego uruchamiania mojej aplikacji po wprowadzeniu zmian w Xcode 8.0. Próbowałem Product > Clean, a nawet usunąłem folder kompilacji cmd + option + shift + k i całkowicie usunąłem katalog danych pochodnych, ale to się nie udało. Nadal mam ten sam błąd.Restartowanie Xcode'a zakończyło się dla mnie.

+1

To samo tutaj. Ponowne uruchomienie Xcode rozwiązało to również teraz. –

+1

Yup ... Już miałem dodać odpowiedź mówiąc tak samo: Po prostu uruchom ponownie Xcode. – Dan1one

+0

Jeśli po wyczyszczeniu i usunięciu danych pochodnych nadal nie można zbudować, zamknąć i ponownie otworzyć Xcode. To zadziałało dla mnie. – nodebase

2

Nie tylko usuwa DerivedData działa, musisz usunąć także folder ModuleCache i zadziałało.

2

To w moim błędem przypadek spowodowany był wyliczenia zagnieżdżone w klasie

zmieniającym

class A { 
    private enum E { 
     ... 
    } 
    ... 
} 

do

fileprivate enum E { 
    ... 
} 

class A { 
    ... 
} 

rozwiązać problemu

1

Po Clean i czystą kompilację teczka ... pozwól Xcode zakończyć indeksowania, a następnie skompiluj.

0

Więc po uruchomieniu tego wydania sam znalazłem, że przyczyną jest użycie "w mojej nazwie projektu. Więc ja renamed my project following the steps outlined by Luke and Dan.

Ale po czyszczeniu i budowaniu dostałem błąd linkera. Problem został rozwiązany przez:

  • dzieje kliknięciu w projekcie w „nawigatora projektu” po lewej stronie, a następnie wchodzenia wybierając „Budowanie Fazy”
  • W „Link Binary z bibliotekami” usunąć bibliotekę z stara nazwa:
  • następnie wyczyść i zbuduj (Command + Shift + K do czyszczenia, Command + B do zbudowania).
Powiązane problemy