SourceKitService समाप्त


242

मुझे Xcode के साथ एक समस्या आ रही है जहां "सोर्स किट सर्विस टर्मिनेटेड" त्रुटि पॉप अप कर रही है और स्विफ्ट में सभी सिंटैक्स हाइलाइटिंग और कोड पूरा हो गया है। मैं इसे कैसे ठीक करूं?

यहाँ एक उदाहरण छवि है:

यहां छवि विवरण दर्ज करें


1
यह Xcode बीटा के साथ एक समस्या प्रतीत होती है। पुनः आरंभ करने के लिए Xcode ने मेरे लिए समस्या का समाधान किया, हालाँकि परियोजना को फिर से खोलने पर त्रुटि हुई और फिर रुक गई।
थॉमस डब्ल्यूडब्ल्यू

4
मुझे बस यह समस्या होने लगी ... तब मैंने अपनी स्विफ्ट फ़ाइल में एक सिंटैक्स त्रुटि दिखाई। एक बार जब मैंने यह तय किया तो संपादक ने फिर से काम करना शुरू कर दिया।
बृंद

80
मैं इसे अभी तय करने के लिए मार
सांता क्लॉस

2
त्रुटि वास्तव में स्विफ्ट के अंदर एक सिंटैक्स त्रुटि के कारण होती है। यदि आप वाक्यविन्यास त्रुटि को दूर करते हैं, तो त्रुटि दूर हो जाएगी :)
स्टीफन ब्रेम

2
न केवल यह 6.1 में हल नहीं है, यह सबसे छोटी "त्रुटियों" के साथ भी होता है जो कि त्रुटियां भी नहीं हैं। टाइपिंग करते समय आप अक्सर इसे ट्रिगर कर सकते हैं । मुझे यह तब हुआ जब मुझे "स्ट्रक्" में "स्ट्रू" के रूप में मिला। मुझे लगता है कि यह वास्तव में "ct" मिलने से पहले मुझे कुछ बताना चाहता था!
मॉरी मार्कोविट्ज़

जवाबों:


114

मेरा (Xcode6-Beta7) जवाब केवल डर्वर्ड डेटा फ़ोल्डर को हटाने के लिए था।

Preferences > Locations > Derived Data > click the arrow to open in Finder > trash it.

आशा है कि यह किसी की मदद करता है। स्पष्ट रूप से कई कारण हैं कि यह दुर्घटना क्यों हो सकती है।


धन्यवाद, इसने इसे ठीक कर दिया।
नौरा सिप

4
लगता है कि इस समस्या को ठीक कर दिया गया है, लेकिन Xcode 6.1 GM का उपयोग भी कर रहा है।
फ्लोव्डिस

7
इसने इसे लगभग 10 मिनट के लिए तय किया, फिर मैंने एक चर का नाम बदल दिया और यह वापस आ गया!
hariseldon78

1
स्थाई निर्धारण नहीं बल्कि केवल उत्तर की वृद्धि .. एक शेल स्क्रिप्ट बनाएं और इसे जब भी rm -frd ~ / Library / Developer / Xcode / DerivedData / * rm -frd ~ / Library / Caches / com.apps.dt पर चलाएँ। Xcode / *
राज

2
मेरी समस्या को ठीक नहीं किया
शिरीष कुमार

35

मेरा मानना ​​है कि मुझे एक अधिक सामान्य उद्देश्य समाधान मिल सकता है। नीचे मैंने Xcode को SourceKitService Terminatedत्रुटि उत्पन्न न करने के लिए प्रोत्साहित करने के लिए कदम उठाए हैं ।


मेरे पास जो लक्षण थे:

  • जब मैं एक नया खेल का मैदान शुरू करूंगा, तो मुझे खेल के मैदान के साथ संवाद नहीं करने के बारे में एक त्रुटि प्राप्त होगी ( ट्विटर पर यह छविError running playground: Failed prepare for communication with playground. देखें) ।
  • जब मैं से खेल का मैदान के लिए स्विच जाएगा OS Xकरने के लिए iOS, मैं (दुर्भाग्य से मुझे लगता है कि एक नीचे नहीं लिखा था) एक और त्रुटि प्राप्त होगा।
  • जब मैं किसी आईओएस आधारित स्विफ्ट परियोजना में टाइप करना शुरू करूंगा, किसी भी UIKit विशिष्ट वर्ग पर कोड पूरा करने / इंटैलिजेंस का उपयोग करने का प्रयास करूंगा, तो मुझे SourceKitService Terminatedइस धागे में समस्या प्राप्त होगी ।

डिबगिंग प्रक्रिया:

  • मैंने SourceKitService के लिए Google को देखकर शुरुआत की, यह बहुत कम मिला।
  • मैंने फिर Xcode का उपयोग करते हुए Console.app की निगरानी शुरू कर दी। इससे कुछ त्रुटियां सामने आईं:
    • IDEPlaygroundDocument: Error encountered running playground
    • com.apple.CoreSimulator.CoreSimulatorService[3952]: The runtime for the selected device is not installed.

मैंने इस मुद्दे को सही करने के लिए क्या किया।

यदि आप केवल स्विफ्ट प्रोजेक्ट के संदर्भ में कोई समस्या रखते हैं, तो पहले इसे अकेले आज़माएँ। यदि वह काम नहीं करता है, तो नीचे दिए गए सभी चरणों का प्रयास करें।

  1. अपनी परियोजना खोलें और लक्ष्य की तैनाती लक्ष्य को कुछ <= 7.1 में बदलें।

अधिक लंबी और शामिल प्रक्रिया। (पहले 3 चरण निश्चित सहायक के लिए नहीं हैं, लेकिन मैंने उन्हें किया, और इसलिए उन्हें यहाँ रिकॉर्ड करें)

  1. अपने सिस्टम पर Xcode की सभी प्रतियों को पूरी तरह से हटा दें।
  2. अपने कंप्यूटर को पुनरारंभ।
  3. केवल Xcode6- बीटा को पुनर्स्थापित करें।
  4. सत्यापित करें कि आपके पास अभी भी खेल का मैदान और / या परियोजनाओं में मुद्दा है।
  5. IOS सिम्युलेटर खोलें।
  6. हार्डवेयर -> डिवाइस -> डिवाइस प्रबंधित करें
  7. सभी डिवाइस निकालें।
  8. मनचाहे सभी उपकरणों को फिर से बनाएँ। मैंने नाम के अंत में iOS संस्करण को जोड़ दिया, सिर्फ इसलिए।
  9. Xcode और सिम्युलेटर को पुनरारंभ करें।
  10. सत्यापित करें कि कम से कम खेल के मैदान अब मुद्दों को नहीं फेंकते हैं जब से स्विच किया OS Xजाता है iOS
  11. अपनी परियोजना खोलें और लक्ष्य की तैनाती लक्ष्य को कुछ <= 7.1 में बदलें।

विश्लेषण

ऐसा प्रतीत होता है कि समस्या Xcode6 के साथ सिम्युलेटर को ठीक से खोजने और कनेक्ट करने में सक्षम नहीं होने के कारण है। मैं यह निर्धारित करने में सक्षम नहीं हूं कि यह मामला क्यों है, लेकिन इसने मुझे स्विफ्ट के साथ विकास जारी रखने की अनुमति दी है। यह इस तथ्य के साथ करना होगा कि सिम्युलेटर बायनेरिज़ स्थानांतरित हो गए हैं


2
इसी तरह की समस्या थी: "चयनित डिवाइस के लिए रनटाइम स्थापित नहीं है।" iPhonesimulator के लिए खेल का मैदान चलाने में त्रुटि। चरण 5. ~ 9। मुद्दा तय किया।
जौं

एक नोट के रूप में - Xcode 6 बीटा 3 ने मेरे लिए समस्या पूरी तरह से हल कर दी है। यकीन नहीं होता कि कैसे या क्यों। उम्मीद है कि दूसरों के लिए भी यही सच है।
एंड्रयू मोंसिज़ादेह

2
इन कदमों के लिए धन्यवाद। मैंने अपने तैनाती लक्ष्य को 7.0 से 7.1 तक समायोजित कर लिया है और लगता है कि अब के लिए समस्या हल हो गई है।
निक

तैनाती लक्ष्य को 7.1 पर सेट करना मेरे लिए काम करता है, लेकिन मैं ऐप लक्ष्य के साथ फ्रेमवर्क लक्ष्य का उपयोग कर रहा हूं, इसलिए यह संकलन विफल हो गया जो वास्तव में बुरा है। लेकिन मुझे कोई कोड सुझाव नहीं मिला, यहां तक ​​कि रंग वापस आ गया है!
सोलोमन

1
इन सभी चरणों का पालन किया, लेकिन यह मेरे लिए काम नहीं किया। : - /
रोहित गोयल

32

आपको बस "ModuleCache" को हटाने की आवश्यकता है, यह कुछ प्रकार का कैश है जो ऑटोकॉमप्लेक्शन के लिए Xcode द्वारा उपयोग किया जाता है।

टर्मिनल में निम्न लाइन को कॉपी और पेस्ट करें:

rm -rf ~ / लाइब्रेरी / डेवलपर / Xcode / DerivedData / ModuleCache


1
इसने मेरे लिए यह किया। कुछ समय के लिए मैं केवल हाइलाइटिंग और स्वतः पूर्ण प्राप्त कर सकता था जब मेरे पास IOS डिवाइस सक्रिय योजना में चयनित था।
वीज़

1
इसने मेरे लिए भी काम किया। जारी नोटों के अनुसार यहाँ कुछ इस Xcode 6.1.1 जीएम बीज
याकूब हार्डिंग

काश, वर्षों बाद, और Xcode निश्चित रूप से निश्चित नहीं है। Xcode 8.1 (8B62) का उपयोग करना और अभी भी SourceKitServer को हर बार जब मैं एक प्रतीक पर क्लिक करता हूं तो क्रैश हो जाता है। निकाले गए डेटा को हटा दिया है, ModuleCache को हटा दिया है। पुनः आरंभ किया गया Xcode। स्थापना रद्द Xcode। एक नई मशीन पर स्थापित Xcode । यही होता है। Xcode एक दयनीय गंदगी है।
वोमबल

27

जैसे ही मैं टाइप करता हूं SourceKitService मेरे सिस्टम पर क्रैश हो जाती है

extension foo {

मैं Xcode 6 बीटा 6 का उपयोग कर रहा हूं और इससे कोई फर्क नहीं पड़ता कि मैं इसे किसी खाली फाइल में टाइप करता हूं या किसी मौजूदा में जोड़ता हूं। जैसे ही स्रोत में एक extensionब्लॉक होगा, यह दुर्घटनाग्रस्त हो जाएगा। नव निर्मित परियोजनाओं पर भी ऐसा होता है।

मेरा "समाधान" उन स्रोतों में विस्तार से बचने के लिए है जो मैं वर्तमान में काम कर रहा हूं। मैं एक वर्ग ब्लॉक के अंत और एक्सटेंशन ब्लॉक की शुरुआत के बारे में टिप्पणी करता हूं। जैसे ही मैंने कक्षा पर अपना काम पूरा किया, मैं उन्हें फिर से टिप्पणी करता हूं:

class MyClass {

    [... my stuff ...]

//}
//
//extension MyClass {

}

बस एक नोट - एक्सटेंशन ने बीटा 5 में ऐसा नहीं किया। यह एक नया बीटा 6 "फीचर" है।
जीन डे लिसा

किसी भी अन्य समाधान क्योंकि मेरे परियोजना में विस्तार के टन हैं। अब इस Xcode के साथ काम नहीं कर सकते।
Bagusflyer

यह इतना यह है। मुझे पता चला है कि मेरी सबसे हालिया परियोजनाओं में मुझे क्या है। अब बग रिपोर्ट दर्ज करना।
बेन क्रीगर

2
मेरे लिए भी बहुत बड़ा मुद्दा है। मैं सिर्फ अपनी फ़ाइल में एक्सटेंशन ले जा रहा हूं, क्लास में कोड लिख रहा हूं, उन्हें एक्सटेंशन में कॉपी-पेस्ट कर रहा हूं। कैसे के माध्यम से इस snuck थोड़ा चकरा देने वाला है।
एंड्रयू मोनशीज़ादेह

9

यह मेरे स्प्रिटकिट प्रोजेक्ट पर टचस्मेव-फंक्शन डालने के बाद होने लगा। यह फ़ंक्शन जबरन अलिखित का उपयोग करता है, जो समस्या का कारण लगता है:

override func touchesMoved(touches: NSSet!, withEvent event: UIEvent!)

विस्मयादिबोधक चिह्न हटाने और इस प्रकार जबरन रोकना बंद करने के बाद, SourceKitService क्रैश हो गया।

उम्मीद है की यह मदद करेगा!


मेरे लिए काम किया! बहुत बहुत धन्यवाद (आशा है कि वे इसे ठीक कर देंगे!)
नेपोलक्स

9

मुझे Apple के डेवलपर फ़ोरम पर एक समाधान मिला (जिसमें लॉगिन की आवश्यकता है, इसलिए मैं इसे यहां भी समझाऊंगा)।

TLDR : @protocolअपने उद्देश्य-सी में स्विफ्ट ब्रिडिंग हेडर को आयात न करें जिसे एक के रूप में नाम दिया गया है @interface। उदाहरण के लिए, फेसबुक एसडीके में एक प्रोटोकॉल और "एफबीग्राफऑब्जेक्ट" नाम का एक इंटरफेस है।

यहाँ मंच पोस्ट है:

Facebook SDK को जोड़ने से SourceKitService क्रैश हो जाती है। यदि आप बीटा 3 का उपयोग करना चाहते हैं और आपको Facebook SDK की आवश्यकता है, तो मेरे आस-पास का एक काम और जो मेरे लिए काम कर रहा है, वह Facebook SDK के @protocol FBGraphObject को रीफ़ैक्‍ट करने वाला है और इसका नाम बदलकर @protocol FGGraphObjectProtocol जैसा @interface FBGraphObject भी मौजूद है और जाहिरा तौर पर SourceKit यह पसंद नहीं है।

यह सुनिश्चित है कि केवल आपको क्रियाशील रखने के लिए एक अस्थायी समाधान है और आपको फ्रेमवर्क लाइब्रेरी का उपयोग करने के बजाय कोकोपोड्स का उपयोग करना होगा या अन्यथा स्वयं फेसबुक एसडीके का निर्माण करना होगा।

कुछ समय के लिए, आपको यह सुनिश्चित करने की आवश्यकता होगी कि आपके पास @protocol और @interface घोषणाओं का विरोध नहीं है और इसमें आपके द्वारा उपयोग की जा सकने वाली 3 पार्टी लाइब्रेरी शामिल हैं।

यह आज मुझे लागत, आशा है कि यह मदद करता है!


E.parto द्वारा 10 जुलाई 2014 को पोस्ट किया गया


बहुत बहुत धन्यवाद। इसने मेरी समस्या को हल कर दिया।
विक्टर रेडेंको जूल

यह बग आपको सतह कर सकता है यदि आप लाइटवेट इम्युनिटी के लिए जॉन स्टर्लिंग के पैटर्न का उपयोग कर रहे हैं ( jonmsterling.com/posts/… ), क्योंकि यह प्रोटोकॉल को सलाह देता है जो उनके कार्यान्वयन के साथ एक नाम साझा करते हैं। प्रोटोकॉल का नाम बदलने से मेरे लिए बिना किसी बुरे प्रभाव के समस्या हल हो गई।
एरिकप्रिस

यह मेरे लिए फेसबुक एसडीके3.17.1
केविश

यह मेरे लिए तय हो गया! धन्यवाद Thanks
रोमन

8

प्रोजेक्ट के लिए स्विफ्ट के अलावा अन्य नाम का उपयोग करें। "स्विफ्ट" आरक्षित है।


10
मुझे यह चेतावनी भी मिली है, लेकिन मेरी परियोजना के नाम में स्विफ्ट शब्द बिल्कुल भी शामिल नहीं है, इसलिए यह "समाधान", शायद "समाधान" नहीं है। और नहीं, मुझे समझ नहीं आया कि यह मुद्दा क्या है।
एंड्रयू मंशीजादेह

1
@AndrewMonshizadeh एक ही समस्या है, स्विफ्ट का कोई संदर्भ नहीं है लेकिन मैं इस त्रुटि को प्राप्त करने से पहले मुश्किल से एक चरित्र या दो टाइप कर सकता हूं।
बाइट्सग्य

1
आगे की जांच ने मुझे यह निर्धारित करने के लिए प्रेरित किया कि जब मैं उप-वर्ग पर कोड पूरा करने का उपयोग करने का प्रयास करता हूं तो मुझे SourceKitService समाप्त त्रुटि प्राप्त होती है UIView
एंड्रयू मोंसिज़ादेह

4
यह मुद्दे का कारण नहीं है। मुझे कोई अंदाजा नहीं है कि इसे क्यों उखाड़ा जाता है।
सांता क्लॉज

1
NRitH, Xcode 6 बीटा 1 का उपयोग करते समय मुझे यह समस्या थी और परियोजना को बदलना एक फिक्स था जो मेरे लिए काम करता था। इस त्रुटि को ट्रिगर करने वाले संभवतः कई कीड़े हैं। आप शायद Xcode के नए संस्करण का उपयोग कर रहे हैं और उन्होंने संभवतः उस बग को ठीक कर दिया है।
मारियस फानू

8

मुझे यह समस्या हर कुछ सेकंड में Xcode 6 Beta 3 में मिली, और यह पूरी तरह से नई परियोजनाओं में भी जारी रही। मैंने तैनाती लक्ष्य को 8.0 से 7.1 में बदल दिया है और यह बंद हो गया है।


5

क्या आपका प्रोजेक्ट नाम है Swift? उस संदेश को देखने के साथ, बिल्ड भी विफल हो जाएगा ( <unknown>:0: error: module name "Swift" is reserved for the standard library)। किसी अन्य प्रोजेक्ट नाम का उपयोग करके देखें SwiftTest। यह काम करेगा।


3

इसे ठीक करने के लिए आपके स्विफ्ट कोड के साथ कुछ अजीब समस्या हो सकती है। उदाहरण के लिए IBOutlets के कई प्रकार होने के कारण क्योंकि आप नकल और चिपकाने के बीच में थे। आमतौर पर यह सिर्फ एक सिंटैक्स त्रुटि है जिसे संभाला नहीं जा सकता है।


2
मैं इस समस्या को एक Xcode प्रोजेक्ट टेम्पलेट से अनमॉडिफाइड कोड के साथ देख रहा हूं, इसलिए मुझे नहीं लगता कि यह स्विफ्ट कोड के साथ कोई समस्या है।
थॉमस डब्ल्यूडब्ल्यू

यह एक ही नाम के साथ कई IBOutlets के कारण हो सकता है।
टोनी

3

मैंने पाया कि स्पष्ट रूप से (सांख्यिकीय रूप से) चर प्रकार लिखकर, उनका उल्लेख करने के बजाय, मेरे लिए समस्या को हल किया।


3

यदि यह खुला है तो Xcode से बाहर निकलें। फिर टर्मिनल रन से:

defaults delete com.apple.dt.Xcode

यह डिफ़ॉल्ट सेटिंग्स पर Xcode को पुनर्स्थापित करेगा। ओपन Xcode और सब कुछ फिर से काम करना चाहिए।


2

मेरे लिए (xcode 6.1) कारण यह था कि मैं प्रोटोकॉल के लिए अपने उपवर्ग को अपनाना भूल गया था।

उदाहरण के लिए यह गलत है:

protocol SomeProtocol { ... }
class A :NSObject, SomeProtocol {
...
}
class B : A {
...
}

और यह ठीक है:

protocol SomeProtocol { ... }
class A : NSObject, SomeProtocol {
...
}
class B : A, SomeProtocol {
...
}

भूल प्रोटोकॉल के साथ एक ही मुद्दा था। आपकी सलाह के लिए धन्यवाद। लगता है कि xcode का संस्करण अब भी बीटा =) की तरह काम करता है
जॉन काकॉन

धन्यवाद! मैं इस पर पागल हो रहा हूँ। आपके समाधान ने मेरी समस्या तय कर दी। मुझे उम्मीद है कि यह तय हो जाएगा, हर उपवर्ग पर प्रोटोकॉल जोड़ने के लिए अजीब लगता है ..
एल्विन

1

केवल इन दो पंक्तियों से युक्त एक कार्यक्रम (स्विफ्ट सिंटैक्स के संदर्भ में संभवतः गलत है) यहां "SourceKitService समाप्त" त्रुटि का कारण बनने के लिए पर्याप्त है:

var x = 42
println("Hello", x)

का उपयोग letकरने के बजाय varसामान्य रूप से फिर से संपादक व्यवहार करता है। Xcode संस्करण 6.0 (6A215l)


मुझे आमतौर पर संदेह है कि यह बग तब सामने आता है जब एक्सकोड एक निश्चित सिंटैक्स त्रुटि को संभाल नहीं सकता है - वास्तविक कोड में या निर्माण करते समय (परियोजना के नाम में तेजी से होने के उदाहरण में)
लिंडसे स्कॉट

मैं कह रहा हूं कि बग शायद एक सिंटैक्स त्रुटि के कारण होता है और चूंकि आपके कोड में एक स्पष्ट सिंटैक्स त्रुटि है, यह मेरे सिद्धांत के अनुरूप है।
लिंडसे स्कॉट

वाक्य रचना त्रुटि के जवाब के रूप में "SourceKitService समाप्त" का कोई मतलब नहीं है। यह वह त्रुटि है जो मैं इंगित कर रहा था। यह प्रश्न में बग है।
अलेक्जेंडर

हाँ। "बग" शब्द का यही अर्थ है। इस बग को सिंटैक्स त्रुटियों से ट्रिगर किया जा रहा है। उम्मीद है कि Apple इसे जल्द ही ठीक कर देगा।
लिंडसे स्कॉट

1

आज एक ही मुद्दा मिला, बात यह थी कि println, मैंने सिर्फ एक मूल्य छापने के लिए पुरानी NSLog शैली की कोशिश की:

// something like this
println("value = %@", valueObj)

जिस तरह से हमें स्ट्रिक्ट में स्ट्रिंग्स की रचना करनी चाहिए वह प्रिंटफ स्टाइल से इनलाइन स्टाइल तक विकसित हुई है, इसलिए अब आप अपने मानों को इस तरह से प्रारूप स्ट्रिंग में एम्बेड करते हैं:

"Here goes \(YOUR_VARIABLE)"

इसलिए, समाधान के ऊपर के उदाहरण के लिए:

println("value =\(valueObj)")

अरे, @downwoter, इस जवाब में क्या गलत है? मुझे अच्छा लगता है। मुझे पता है कि हम अभी भी स्विफ्ट के साथ NSLog का उपयोग कर सकते हैं, लेकिन प्रिंटल स्विफ्ट के बाद से करने का तरीका है। और यह उत्तर सीधे समस्या से संबंधित है, वर्णित पंक्ति SourceKit सेवा को क्रैश कर देती है।
MANIAK_dobrii

मेरे पास एक
प्रिंटल के

1

मैं बीटा 2 में बनाए गए प्रोजेक्ट के लिए Xcode6 Beta 3 के साथ एक ही मुद्दा था।

इसकी वजह थी स्विफ्ट लैंग्वेज में बदलाव के नए बदलाव यानी ऐरे डिक्लेरेशन सिंटैक्स।

बीटा 3 में परिवर्तन तोड़ने के कारण प्रभावित कोड की जाँच करें।

http://adcdownload.apple.com//Developer_Tools/xcode_6_beta_3_lpw27r/xcode_6_beta_3_release_notes__.pdf

मेरे मामले में एक उदाहरण था:

मुझे बदलना पड़ा:

var tabBarController : UITabBarController = self.window?.rootViewController as UITabBarController;

सेवा

var tabBarController : UITabBarController = self.window!.rootViewController as UITabBarController

निष्कर्ष: ऐसा लगता है कि यदि स्रोत कोड में कोई त्रुटि है, तो कुछ स्थितियों में यह त्रुटि Xcode द्वारा निर्मित है।

बग ठीक होने तक समाधान: मैन्युअल रूप से त्रुटि की जांच करें :)

सौभाग्य!


1

मेरे लिए समाधान सिम्युलेटर बदलने के लिए हुआ। मैं अपने सिम्युलेटर के लिए iPhone 5S का उपयोग कर रहा था और जब मैंने इसे iPhone 5 में स्विच किया, तो सब कुछ पूरी तरह से काम कर रहा था। उम्मीद है कि भविष्य का संस्करण इसे पूरी तरह से ठीक कर देगा।


मैंने पाया है कि iPhone 5 सिम्युलेटर हमेशा सबसे अच्छा विकल्प है, हर दूसरे एक क्रैश
डैनियल गैलास्को

@DanielGalasko दिलचस्प। मैं आमतौर पर iPhone 5S का उपयोग करता हूं, यह मेरे लिए बहुत स्थिर है।
फोमेंटिया

यदि आप Xcode 6.1 का उपयोग कर रहे हैं, तो यह मेरी समझ को संबोधित किया गया है :)
डैनियल गैलास्को

मैं अपने बयान को अभी भी टूट गया है और 5 निश्चित रूप से केवल काम कर रहे सिम्युलेटर है
डैनियल Galasko

1

मैंने पाया कि टर्मिनल से निकाले गए डेटा को हटाने से अगली दुर्घटना तक समस्या हल हो जाती है। : एस

यह यहां स्थित है: / उपयोगकर्ता / {उपयोगकर्ता नाम} / लाइब्रेरी / डेवलपर / Xcode / DerivedData / {प्रोजेक्ट नाम} - {रैंडम चार अनुक्रम}

आशा है कि ये आपकी मदद करेगा।


1

मुझे लगता है कि यह होने के कारणों में से एक (जैसा कि शायद बहुत से हैं) मुझे पता चला है।

मेरे मामले में, मैं ब्रिजिंग हैडर के माध्यम से ऑब्जेक्टिव-सी फाइलें आयात कर रहा था जिसमें निम्न में से एक सच था:

  1. उद्देश्य-सी आयात के लिए कार्यान्वयन फ़ाइल (.m), एप्लिकेशन लक्ष्य को ठीक से सेट नहीं किया था।
  2. ऑब्जेक्टिव-सी फ़ाइल में केवल हेडर (.h) फ़ाइल थी और कार्यान्वयन (.m) फ़ाइल नहीं थी। (फिर से, मुझे लगता है कि यह "नो प्रॉपर ऐप टारगेट" सेट का हिस्सा है, क्योंकि आप केवल .m फाइलों में टारगेट सेट कर सकते हैं न कि .h फाइल्स)।

उद्देश्य-सी फ़ाइलों पर ऐप के लक्ष्यों को ठीक करना या ब्रिजिंग हेडर में उन फ़ाइल (ओं) के आयात को हटाना सभी मिलकर समस्या को ठीक करने लगते हैं।

FYI करें - यदि आपको हैडर (.h) फ़ाइलों का लक्ष्य निर्धारित करना है, जिसमें कोई कार्यान्वयन (.m) फ़ाइल नहीं है, तो आप इन सरल चरणों का पालन कर सकते हैं: Xcode 4.5 में लक्ष्य सदस्यता दृश्यता को परिवर्तित नहीं कर सकते


1

बस एक और संभावित समाधान यहाँ जोड़ने के लिए, मैंने गलती से एक वर्ग संस्करण को उसी नाम का नाम दिया था, जैसा कि यह टाइप है:

class var Settings:Settings {
        get { return classVarWorkAround.settings }
    }

यह SourceKit FOR SURE को क्रैश कर देगा। बेवकूफ वाक्यविन्यास त्रुटि, लेकिन मामले में कोई और भी वही गलती करता है।

संपादित करें: @Portland धावक के अनुसार:

इसी प्रकार, यदि आप रिटर्न प्रकार को फंक नाम पर सेट करते हैं तो आपको त्रुटि मिलेगी।

func foo() ->foo{}

1
इसी प्रकार, यदि आप रिटर्न प्रकार को फंक नाम पर सेट करते हैं तो आपको त्रुटि मिलेगी। func foo() ->foo{} (बेझिझक इसे अपने उत्तर में जोड़ें)
पोर्टलैंड रनर

0

जब यह त्रुटि आनी शुरू हो जाती है, तो अपने द्वारा लिखे गए कोड के अंतिम / हाल के टुकड़े पर टिप्पणी करें और थोड़ी देर प्रतीक्षा करें। सिंटैक्स हाइलाइटिंग फिर से दिखाई देना चाहिए। इस तरह मैं समस्या के आसपास काम करता हूं।

    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)
    }

आप जो भी करते हैं, उसकी परवाह किए बिना सिस्टम खुद को फिर से बूट करता है। आपको लाइन पर टिप्पणी करने की आवश्यकता नहीं है, यह अभी भी शीघ्र ही फिर से चलना शुरू कर देगा। और दुर्घटनाग्रस्त भी।
मॉरी मार्कोविट्ज़

0

Apple (# 17266321) को रिपोर्ट किया गया:

विवरण:

सारांश: यदि हम किसी शब्दकोश को मान के साथ मुद्रित करने का प्रयास करते हैं, तो एक सरणी के रूप में एक पॉप-अप पॉपिंग करता रहता है - "SourceKit समाप्त। संपादक कार्यक्षमता अस्थायी सीमित"। Xcode जमा देता है और संदर्भ मान्यता खो देता है जिससे पाठ काला हो जाता है।

पुन: उत्पन्न करने के लिए चरण: 1. एक सरणी बनाएं - "var iOSHistoryArray = [" iOS6 "," iOS7 "," iOS8 ",]"

  1. एक शब्दकोश बनाएं - "var MacOSYosemiteFeatures: Dictionary = [" डिवाइस ": iOSHistoryArray]"।

  2. शब्दकोश को इस रूप में प्रिंट करें - "प्रिंट्लन (" ऐरे वैल्यू युक्त%: @ @ n ", MacOSYosemiteFeatures)" (<< - Culprit - >>)

  3. चरण 3 उस समस्या टिप्पणी का कारण बनता है जो Xcode को फिर से कार्यशील बनाता है।

अपेक्षित परिणाम: Xcode सामान्य रूप से कार्य करना चाहिए।

वास्तविक परिणाम: Xcode अप्रभावी हो जाता है, संदर्भ मान्यता खो देता है (सभी फ़ॉन्ट खो जाता है और सभी पाठ सादे काले हो जाते हैं), संपूर्ण Xcode निष्क्रिय हो जाता है।

संस्करण: संस्करण 6.0 (6A215l)


0

कोशिश करो:

स्विफ्ट कंपाइलर / इंडेक्स में एक बग है। आपके कोड की कुछ रेखाएं या रेखाएं इसे कठिनाई दे रही हैं। इससे पहले कि आप Xcode के साथ उस परियोजना को खोलने में सक्षम हों, आपको अपने कोड को कुछ अन्य टेक्स्ट एडिटर के साथ अपमानजनक लाइन (टिप्पणियों) को संपादित करने के लिए संपादित करना होगा। यदि आपके पास कोई सुराग नहीं है कि समस्या क्या है, तो अपने सभी कोड पर टिप्पणी करें। एक बार प्रोजेक्ट ओपन होने के बाद, आप तब तक कोड को बहुत कम करके वापस लाना शुरू कर सकते हैं, जब तक सीपीयू गतिविधि में वृद्धि आपको यह न बता दे कि आपको समस्या मिल गई है।


@Pang यदि उत्तर सही तरीके से मान्य हैं और वही प्रश्न संभवत: डुप्लिकेट हैं तो आपको उन्हें बंद करने के लिए वोट या ध्वज देना चाहिए - इस मामले में यह निश्चित रूप से खुले रखने के लिए है
mmmmmm

0

संकट:

  • यदि स्रोत कोड में कोई त्रुटि है, तो "SourceKitService समाप्त" पॉप अप दिखाई दे सकता है और कोड हाइलाइटिंग काम करना बंद कर देता है। ऐसा हो सकता है या नहीं हो सकता है, जब यह कई अलग-अलग परिस्थितियों में करता है।

मेरा मामला: स्थापित बीटा 3, OSX केवल प्रोजेक्ट, एक फ़ाइल का पता चला "आधा बंद रेंज ऑपरेटर को .. से .. </ error> में बदल दिया गया है। पॉप अप दिखाई देने लगता है और कोड हाइलाइटिंग विफल होने लगती है।

उपाय:

  • Xcode द्वारा ठीक की गई त्रुटि
  • नेविगेटर में एक अलग .swift में बदलें, मूल पर वापस आएं
  • सिंटैक्स हाइलाइटिंग फिर से दिखाई देता है और "SourceKitService समाप्त" पॉप अप हो गया है

0

Xcode में, अपने मेनू बार पर जाएं >> विंडो >> डिवाइसेस (शिफ्ट + cmd + 2) एक नई विंडो पॉप अप होगी, और नीचे बाईं ओर, एक नया सिम्युलेटर जोड़ें, विशेष रूप से मौजूदा सूची में iOS 8.0 पर चलने वाला एक : आपको xcode को पुनरारंभ करने की आवश्यकता हो सकती है

refrence: http://www.reddit.com/r/swift/comments/2bznfo/error_running_playground_unable_to_find_suitable/


0

मेरे मामले में मैंने ब्रिजिंग हेडर में गुम फाइलों को आयात किया था। जब मैंने गलत आयात को हटा दिया उसके बाद त्रुटि सूचना चली गई।


0

नेस्टेड ऑब्जेक्टिव-सी ++ प्रोजेक्ट के साथ भी यही त्रुटि थी कि अब स्विफ्ट कोड के साथ फ्रेमवर्क भी शामिल है। इस समस्या को ठीक करने के लिए मुझे स्पष्ट रूप से रूपरेखा का निर्माण करना था। एक बार जब मैंने किया कि समस्या दूर हो गई है, और वापस नहीं आती है;)


0

अभी भी xcode 6 संस्करण 6.0 (6A313) के साथ हो रहा है

  • एक नया प्रोजेक्ट बनाएं
  • एक फ्रेमवर्क और लाइब्रेरी जोड़ें
  • कोको टच फ्रेमवर्क का चयन करें
  • एक स्विफ्ट फ़ाइल जोड़ें
  • स्विफ्ट फ़ाइल में एक क्लास जोड़ें

क्रैश

पुनश्च: ब्रांड नए मैक मिनी, कोई पिछले xcode स्थापित नहीं, विदेशी कुछ भी नहीं है। बस एक बीटा उत्पाद मुझे लगता है।


0

Xcode 6.1 बीटा 3:

जैसे ही आप एक गैर-निजी प्रकार के उर्फ ​​(जैसे typealias Foo = Int) को एक स्विफ्ट फ़ाइल में परिभाषित करते हैं, एक प्रकार का पत्र cदूसरी फ़ाइल में SourceKitService क्रैश होता है।

समाधान या तो प्रकार के उपनामों के उपयोग से इस्तीफा दिया जाता है, अगली बीटा रिलीज़ की प्रतीक्षा करें या अपनी परिभाषाओं को वर्ग परिभाषाओं में लपेटें:

public class DummyClass {
    public typealias Foo = String
}

और इसे इस तरह उपयोग करें:

var myVar:DummyClass.Foo?

0

IOS 8.0 में तैनाती का लक्ष्य बदलना मेरे लिए काम कर गया। मुझे पता है कि किसी ने कहा कि इसे ले जाना <= 7.1 काम किया है, लेकिन यह समस्या कई स्रोतों से आती है, इसलिए यह विकल्प काम कर सकता है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.