2015-04-10 11 views
16

Wczoraj uaktualniono do Xcode 6.3. Odtąd nie byłem w stanie zbudować niczego, co ma w sobie Parse.framework. Dla PFConstants.h pojawiają się błędy jakProblem Nullability na Xcode 6.3

nullability specifier '_nullable' cannot be applied to non-pointer

Nigdy nie widziałem tego błędu przed i zmienił niczego innego niż aktualizację do 6.3. Jakieś pomysły?

Odpowiedz

19

Parse wdrożył nowy wartości null adnotacje, które są dostępne w Xcode 6.3 - patrz ich blog post, ale wydaje się, że podejście w ich starych ram powoduje te błędy kompilacji.

Wystarczy zaktualizować ramy analizowania z najnowszej API downloads i będzie z powrotem w biznesie

+2

To wszystko. Dzięki za szybką odpowiedź. Szalone, że jedna aktualizacja spowodowała tyle problemów. – user717452

+2

Mam ten sam problem, a ja usunąłem starą wersję Parse i zastąpiłem ją nowym, a ten błąd (wraz z innymi nadal się pojawia). Czy jest coś, co powinienem robić poza usunięciem frameworków i dodaniem ich zaktualizowanej wersji? W tej chwili otrzymuję również błąd "Nie udało się zaimportować nagłówka brygady" oraz "Nie można zbudować modułu ParseUI" oprócz błędów zerowania – SamYoungNY

+0

Ten sam błąd tutaj, nie można zbudować projektu ... @SamYoungNY ty znaleźć wskazówkę? –

1

Wydaje się to być problem z wersją Parse używasz. Chociaż oczywistą odpowiedzią jest aktualizacja twoich wersji Parse, może to spowodować efekt domina w aplikacji.

Nie chcę aktualizować do najnowszej wersji analizy, ponieważ wymagałoby to znaczących zmian w celu dostosowania do nowego pakietu SDK serwisu Facebook i innych potrzebnych bibliotek.

Okazało się, że ta poprawka działa dobrze dla uzyskania kompilacji projektu i pracy:

przełącznik wokół lokalizacji PF_NULLABLE_S w zmiennych problemowych i wydawało się rozwiązać problem

więc przełączyć to:

typedef void (^PFArrayResultBlock)(PF_NULLABLE_S NSArray *objects, PF_NULLABLE_S NSError *error); 

do tego:

typedef void (^PFArrayResultBlock)(NSArray * PF_NULLABLE_S objects, NSError * PF_NULLABLE_S error); 

Th jest włączona moja aplikacja do kompilowania i uruchamiania jako normalna bez zmiany bibliotek. Ta odpowiedź z pewnością nie jest rozwiązaniem problemu, ale jest bardzo przydatna w wielu sytuacjach, np. chcesz mieć możliwość przetestowania starszej wersji, nie chcesz jej jeszcze aktualizować, ale chcesz ją uruchomić.

Powiązane problemy