Sourcekitservice Zakończone
Mam problem z Xcode, gdzie pojawia się błąd "Source Kit Service Termined" i wszystkie podświetlanie składni i uzupełnianie kodu zniknęło w Swift. Jak mogę to naprawić?
Oto przykładowy obrazek:
30 answers
Odpowiedzią na moje (Xcode6-Beta7) było po prostu usunięcie pochodnego folderu danych.
Preferences > Locations > Derived Data > click the arrow to open in Finder > trash it.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-10 11:49:48
Myślę, że znalazłem bardziej ogólne rozwiązanie. Poniżej znajdują się kroki, które użyłem, aby zachęcić Xcode, aby nie produkować błąd SourceKitService Terminated
.
Objawy, które miałem:
- kiedy uruchamiałem nowy plac zabaw, otrzymywałem błąd, że nie mogłem się z nim komunikować (
Error running playground: Failed prepare for communication with playground.
Zobacz to zdjęcie na Twitterze . - kiedy zmieniałem plac zabaw z
OS X
naiOS
, otrzymywałem kolejny błąd (Niestety zrobiłem nie zapisuj tego). - kiedy zaczynałem wpisywać projekt Swift oparty na systemie iOS, próbując użyć kodu uzupełniającego / intellisense na dowolnej klasie specyficznej dla UIKit, otrzymywałem problem
SourceKitService Terminated
w tym wątku.
Proces debugowania:
- zacząłem od szukania przez google SourceKitService, to było bardzo mało.
- zacząłem monitorować konsolę.aplikacja podczas korzystania z Xcode. To pokazało kilka błędy:
IDEPlaygroundDocument: Error encountered running playground
com.apple.CoreSimulator.CoreSimulatorService[3952]: The runtime for the selected device is not installed.
Co zrobiłem, aby rozwiązać ten problem.
Jeśli masz problem tylko w kontekście projektu Swift, spróbuj najpierw sam. Jeśli to nie zadziała, spróbuj wykonać wszystkie poniższe kroki.
- Otwórz swój projekt i zmień cel wdrożenia na coś
- całkowicie usuń wszystkie kopie Xcode w systemie. Uruchom ponownie komputer.
- Zainstaluj ponownie tylko Xcode6-beta.
- sprawdź, czy nadal masz problem z placem zabaw i / lub projektami.
- Otwórz symulator iOS.
- Hardware - > Device - > Manage Devices
- Usuń wszystkie urządzenia.
- odtworzyć wszystkie urządzenia, które chcesz. Dodałem wersję iOS na końcu nazwy, tylko ponieważ.
- Uruchom ponownie Xcode i symulator.
- sprawdź, czy przynajmniej place zabaw nie rzucają już problemów po zmianie z
OS X
naiOS
. - Otwórz swój projekt i zmień cel wdrożenia na coś
Analiza
Wygląda na to, że problem polega na tym, że Xcode6 nie jest w stanie prawidłowo znaleźć i połączyć się z symulatorem. Nie byłem w stanie ustalić, dlaczego tak jest, ale pozwoliło mi to kontynuować rozwój z Swift. Może to mieć związek z faktem, że pliki binarne symulatora wydają się poruszać.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-09 01:28:10
Wystarczy usunąć "ModuleCache", jest to rodzaj pamięci podręcznej używanej przez Xcode do automatycznego uzupełniania.
Skopiuj i wklej następujący wiersz w Terminalu:
Rm-rf ~ / Library/Developer/Xcode/DerivedData / ModuleCache
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-19 15:52:36
SourceKitService zawiesza się w moim systemie, gdy tylko wpiszę
extension foo {
Używam Xcode 6 beta 6 i nie ma znaczenia, czy wpiszę go do pustego pliku, czy dodam do istniejącego. Gdy tylko źródło zawiera jeden extension
blok, zostanie on zawieszony. dzieje się tak nawet w nowo utworzonych projektach.
Moim "rozwiązaniem" jest uniknięcie rozszerzenia w źródłach, nad którymi obecnie pracuję. Komentuję koniec bloku klasowego i początek bloku rozszerzeń. Jak tylko mam skończyłem pracę nad klasą, komentuję je jeszcze raz:
class MyClass {
[... my stuff ...]
//}
//
//extension MyClass {
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-15 01:30:34
Zaczęło się to dziać na moim projekcie spritekit po wstawieniu funkcji touchesMoved. Ta funkcja używa wymuszonego rozpakowywania, co wydaje się powodować problem:
override func touchesMoved(touches: NSSet!, withEvent event: UIEvent!)
Po usunięciu wykrzykników i tym samym zaprzestaniu przymusowego rozpakowywania, SourceKitService przestał się upaść.
Mam nadzieję, że to pomoże!Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-07 13:52:35
Znalazłem rozwiązanie na forach programistów Apple (które wymagają logowania, więc wyjaśnię to również tutaj).
TLDR : nie Importuj @protocol
w Objective-C do nagłówka mostkowania Swift, który ma taką samą nazwę jak @interface
. Na przykład, Facebook SDK ma zarówno protokół, jak i interfejs o nazwie "FBGraphObject".
Oto post na forum:
Dodanie Facebook SDK powoduje awarię SourceKitService. Jeśli chcesz korzystać z beta 3 i potrzebujesz Facebook Facebook SDK, jedna praca wokół, że znalazłem i pracuje dla mnie jest refactoring Facebook SDK @protocol FBGraphObject i zmiana nazwy go na coś w rodzaju @protocol fbgraphobjectprotocol jako @ interface fbgraphobject również istnieje i najwyraźniej SourceKit nie podoba.
To na pewno tymczasowe rozwiązanie tylko po to, aby utrzymać funkcjonalność i będziesz musiał użyć Cocoapods lub w inny sposób zbudować Facebook SDK samodzielnie, a nie za pomocą biblioteki framework.
Na razie, musisz upewnić się, że nie masz sprzecznych deklaracji @protocol i @interface oraz że zawiera ona biblioteki innych firm, których możesz używać.
To kosztowało mnie dzisiaj, mam nadzieję, że to pomoże!
Posted by e.parto on Lipiec 10, 2014
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-11 01:05:51
Użyj innej nazwy niż Swift dla projektu. "Swift" jest zarezerwowane.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-03 08:30:24
Miałem ten problem co kilka sekund w Xcode 6 Beta 3, i kontynuował nawet w zupełnie nowych projektach. Zmieniłem cel wdrożenia z 8.0 na 7.1 i się zatrzymał.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-20 08:46:31
Czy twój projekt nazywa się Swift
? Widząc tę wiadomość, build również by się nie powiódł (<unknown>:0: error: module name "Swift" is reserved for the standard library
). Spróbuj użyć innej nazwy projektu, np. SwiftTest
. To by zadziałało.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-03 08:01:55
Aby to naprawić, możesz mieć jakiś dziwny problem z kodem Swift. Na przykład posiadanie wielu definicji IBOutlets, ponieważ byłeś w trakcie kopiowania i wklejania. zwykle jest to tylko błąd składni, który nie może być obsługiwany.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-03 02:29:34
Odkryłem, że jawnie (statycznie) wpisując typy zmiennych, zamiast wnioskować je, rozwiązałem problem.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-05 03:06:15
Zamknij Xcode, jeśli jest otwarte. Następnie z terminala uruchom:
defaults delete com.apple.dt.Xcode
Spowoduje przywrócenie Xcode do ustawień domyślnych. Otwórz Xcode i wszystko powinno działać ponownie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-15 15:33:42
Dla mnie (xcode 6.1) powodem było to, że zapomniałem zaadoptować moją podklasę do protokołu.
Na przykład jest to błędne:
protocol SomeProtocol { ... }
class A :NSObject, SomeProtocol {
...
}
class B : A {
...
}
A to jest ok:
protocol SomeProtocol { ... }
class A : NSObject, SomeProtocol {
...
}
class B : A, SomeProtocol {
...
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-24 12:23:28
Program składający się tylko z tych dwóch linii (prawdopodobnie źle pod względem składni Swift) wystarczy, aby spowodować błąd "Sourcekitservice Terminated" tutaj:
var x = 42
println("Hello", x)
Użycie let
zamiast var
powoduje, że edytor zachowuje się normalnie. Xcode Wersja 6.0 (6A215l)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-13 22:46:00
Dostałem dzisiaj ten sam problem, rzecz była z println
, po prostu próbowałem starego stylu NSLog wydrukować wartość:
// something like this
println("value = %@", valueObj)
Sposób, w jaki powinniśmy komponować ciągi znaków w języku swift ewoluował od stylu printf do stylu inline, więc teraz osadzasz swoje wartości bezpośrednio w łańcuchu formatu w następujący sposób:
"Here goes \(YOUR_VARIABLE)"
Więc dla powyższego przykładu rozwiązanie jest następujące:
println("value =\(valueObj)")
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-20 12:45:49
Miałem ten sam problem z xcode6 beta 3 dla projektu stworzonego w wersji beta 2.
Było to spowodowane nowymi zmianami w języku swift, tj. składnią deklaracji array.
Sprawdź kod z powodu przerwania zmian w wersji beta 3.
Jednym z przykładów w moim przypadku było:
Musiałem zmienić:
var tabBarController : UITabBarController = self.window?.rootViewController as UITabBarController;
To
var tabBarController : UITabBarController = self.window!.rootViewController as UITabBarController
Wniosek: wygląda na to, że jeśli jest błąd w kodzie źródłowym, w niektórych warunkach ten błąd jest produkowany przez Xcode.
Rozwiązanie dopóki błąd nie zostanie naprawiony: sprawdź błąd ręcznie :)
Goodluck!Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-11 09:08:04
Rozwiązaniem dla mnie była zmiana symulatora. Używałem iPhone 5S do mojego symulatora i kiedy przełączyłem go na iPhone 5, wszystko działało idealnie. Mam nadzieję, że przyszła wersja naprawi to całkowicie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-19 00:56:42
Odkryłem, że usunięcie danych pochodnych z terminala rozwiązuje problem do następnej awarii. : S
Jest on dostępny pod adresem: / Users / {User name} / Library / Developer / Xcode/DerivedData/{Project Name} - {Random char sequence}Mam nadzieję, że to pomoże.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-19 06:58:47
Myślę, że rozgryzłem jeden (ponieważ prawdopodobnie jest wiele) powodów, dla których tak się dzieje.
W moim przypadku importowałem pliki Objective-C przez nagłówek mostkowy, który miał jedną z następujących wartości true:
- Plik implementacji (.m) dla przywozu Objective-C, nie miał cel aplikacji prawidłowo ustawiony.
- Plik Objective-C miał tylko nagłówek (.h) plik, a nie realizacja (.m) akta. (ponownie myślę, że jest to część " nie właściwy cel aplikacji" ustaw, jak można ustawić cele tylko w.pliki m i nie .pliki h)
Naprawienie celów aplikacji w plikach Objective-C lub usunięcie importu tych plików w nagłówku pomostowym razem wydaje się rozwiązać problem.
FYI-jeśli chcesz ustawić cel nagłówka (.h) pliki, które nie mają implementacji (.m) plik, możesz wykonać następujące proste kroki: nie można zmienić widoczności członkostwa docelowego w Xcode 4.5
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 10:31:34
Aby dodać jeszcze jedno potencjalne rozwiązanie, przypadkowo nazwałem klasę var taką samą nazwą, jak jej typ:
class var Settings:Settings {
get { return classVarWorkAround.settings }
}
To na pewno spowoduje awarię SourceKit. Głupi błąd składni, ale na wypadek, gdyby ktoś inny popełnił ten sam błąd.
Edit: również według @ Portland Runner:
Podobnie, jeśli ustawisz Typ powrotu na nazwę func, pojawi się błąd.
func foo() ->foo{}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-02 14:03:55
Kiedy ten błąd zaczyna się pojawiać, po prostu skomentuj ostatni / ostatni fragment kodu, który napisałeś i poczekaj chwilę. Podświetlenie składni powinno pojawić się ponownie. W ten sposób obejdę problem.
func someFunc() -> (Int?, Int?, Int?) {
var retVal1:Int? = nil
var retVal2:Int? = nil
var retVal3:Int? = nil
//some other code
//commenting out the line below helped me
//(retVal1, retVal2, retVal3)
return (retVal1, retVal2, retVal3)
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-07 05:00:30
Zgłoszone do Apple (#17266321):
Szczegóły:
Podsumowanie: Jeśli spróbujemy wydrukować słownik z wartością jako tablicę, wyskakujące okienko ciągle wyskakuje z napisem - " sourcekit zakończony. Funkcjonalność edytora ograniczona czasowo". Xcode zawiesza się i traci rozpoznawanie kontekstu powodując tekst do czernienia.
Kroki do odtworzenia: 1. Tworzenie tablicy jako - " var iOSHistoryArray = ["iOS6","iOS7", "iOS8",] "
Utwórz słownik jako -"var MacOSYosemiteFeatures: Dictionary = ["Urządzenie": iOSHistoryArray]".
Wypisuje słownik jako - " println ("słownik zawierający wartość tablicy: % @ \n", MacOSYosemiteFeatures)" (>)
Krok 3 powoduje komentowanie problemu, który sprawia, że Xcode ponownie działa.
Oczekiwane Wyniki: Xcode powinien działać normalnie.
Rzeczywiste Wyniki: Xcode staje się niefunkcjonalny, traci rozpoznawanie kontekstu (Cała czcionka zostaje utracona, a cały tekst staje się zwykły czarny), cały Xcode staje się nieaktywny.
Wersja: Wersja 6.0 (6A215l)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-06-11 09:51:08
Spróbuj:
Jest błąd w kompilatorze / indeksatorze Swift. Jakaś linia lub linie w Twój kod sprawia trudności. Będziesz musiał edytować swój kod z innym edytorem tekstowym, aby skomentować linię(linie) zanim będzie można otworzyć ten projekt z Xcode. Jeśli masz nie mam pojęcia w czym problem, skomentuj cały kod. Gdy już projekt otwarty, możesz zacząć przywracać kod krok po kroku dopóki wzrost aktywności CPU nie powie Ci że znalazłeś problem.
Problem:
- Jeśli w kodzie źródłowym wystąpi błąd, może pojawić się wyskakujące okienko" Sourcekitservice Terminated " i podświetlanie kodu przestanie działać. Może się zdarzyć, ale nie musi się zdarzyć, gdy robi to w wielu różnych warunkach.
Mój przypadek: Installed beta 3, OSX only project, w jednym pliku wykryto " operator półzamkniętego zasięgu został zmieniony z .. za ..
Rozwiązanie:
- Napraw błąd wykryty przez Xcode
- Zmień na inny .swift w Navigatorze, wróć do oryginału
- podświetlanie składni pojawia się ponownie i wyskakuje okienko" Sourcekitservice Terminated "
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-07-12 16:32:16
W xcode przejdź do paska menu > > Okno > > urządzenia (shift+cmd+2) pojawi się nowe okno, a na dole po lewej stronie Dodaj nowy symulator, w szczególności ten działający na iOS 8.0 do istniejącej listy edit: może być konieczne ponowne uruchomienie xcode
Refrence:http://www.reddit.com/r/swift/comments/2bznfo/error_running_playground_unable_to_find_suitable/
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-12 02:51:06
W moim przypadku zaimportowałem brakujące pliki w nagłówku pomostowym. Po usunięciu źle importuje powiadomienie o błędzie zniknęło.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-21 11:10:33
Miałem ten sam błąd w zagnieżdżonym projekcie Objective-C++, który teraz zawiera Framework z kodem Swift. Aby rozwiązać ten problem musiałem jawnie zbudować framework. Raz zrobiłem ten problem zniknął i nie wraca ;)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-08-31 20:01:40
Nadal dzieje się z Xcode 6 w wersji 6.0 (6A313)
- Utwórz nowy projekt
- Dodaj Framework & bibliotekę
- Wybierz cocoa touch framework
- Dodaj plik Swift
- Dodaj klasę do pliku swift
Awarie
Ps: zupełnie nowy mac mini, brak wcześniejszych instalacji xcode, nic egzotycznego. To chyba tylko produkt beta.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-09-22 15:50:44
Xcode 6.1 Beta 3:
Gdy tylko zdefiniujesz Nie-prywatny Alias typu (np. typealias Foo = Int
) w jednym pliku Swift wpisz literę c
w innym pliku sourcekitservice ulega awarii.
Rozwiązaniem jest rezygnacja z używania aliasów typów, oczekiwanie na kolejną wersję beta lub zawinięcie aliasów typów w definicje klas:
public class DummyClass {
public typealias Foo = String
}
I użyj go tak:
var myVar:DummyClass.Foo?
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-02 12:50:19
Zmiana celu wdrożenia na iOS 8.0 zadziałała. Wiem, że ktoś powiedział, że przeniesienie go do
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-10-02 17:08:26