ios - कमांड कम्पाइलस्विफ्ट Xcode 10[डुप्लिकेट] में एक नॉनज़ेरो एक्जिट कोड के साथ विफल हो गया




swift swift4 (16)

ERROR = कमांड कंपाइलस्विफ्ट्स स्रोत एक नॉनज़ेरो एक्जिट कोड के साथ विफल हो गया

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

इस सवाल का पहले से ही यहाँ एक जवाब है:

नमस्कार,

फिलहाल Xcode के नवीनतम संस्करण में अपडेट करने के बाद (संस्करण 10.0) परियोजना का निर्माण करने में असमर्थ है, क्योंकि इसमें कुछ "कमांड कंपाइलस्विफ्ट के बारे में कुछ त्रुटियां मिलीं जो एक नॉनजेरो एग्जिट कोड के साथ" त्रुटि।

मैं इस त्रुटियों को कैसे हल करूं? वे अधिकांश पॉड्स में दिखाई देते हैं (मैं कोकोआपोड्स का उपयोग करता हूं) मैं अपनी परियोजना के अंदर उपयोग करता हूं।

मैंने उपलब्ध नवीनतम संस्करण में पॉड संस्करण और पॉड को अपडेट करने की कोशिश की है, लेकिन समस्या अभी भी है।

मैंने वेब के माध्यम से बहुत कुछ खोजा है और इस मुद्दे के बारे में बहुत कम जानकारी है।

सादर।


आप पूरी त्रुटि संदेश नहीं पढ़ रहे हैं। यदि आप "कमांड कंपाइलस्विफ्ट नॉन-एज़ो एग्ज़िट कोड के साथ विफल" संदेश से ऊपर देखते हैं, तो आपको इस तरह के कुछ विनिर्देश खोजने चाहिए:

इस उदाहरण में मेरे पास एक ही नाम वाली दो फाइलें थीं। एक बार जब मैंने इसे ठीक कर लिया तो सब कुछ वैसा ही काम करना चाहिए जैसा होना चाहिए।


ऐसा लगता है कि यह एक बहुत अस्पष्ट त्रुटि है, इसलिए जब मैंने इसमें भाग लिया तो इसे ठीक करने के लिए मैंने जो किया उसे साझा करूंगा:

Xcode 10.1 और Swift 4.2 का उपयोग करते हुए मैंने यहां सभी सुझावों की बहुत कोशिश की, लेकिन उनमें से किसी ने भी मेरे लिए काम नहीं किया, तब मुझे एहसास हुआ कि मैं जिस एक निर्भरता का उपयोग कर रहा था, वह स्विफ्ट 4.2 के साथ संगत नहीं थी और इससे मुझे अन्य पॉड्स पर यह त्रुटि मिल रही थी। तो इसे ठीक करने के लिए मुझे बस उस पॉड को अपने Podfile के अंत में स्विफ्ट 4.0 का उपयोग करने के लिए मजबूर करना पड़ा:

post_install do |installer|
    installer.pods_project.targets.each do |target|
        if ['TKRadarChart'].include? target.name
            target.build_configurations.each do |config|
                config.build_settings['SWIFT_VERSION'] = '4.0'
            end
        end
    end
end

कक्षा पुन: घोषणा समस्या होगी। डुप्लीकेट क्लास और बिल्ड चेक करें।


मुझे इस मुद्दे को हल करने के लिए अपना अनुभव साझा करें।

खुले लक्ष्य -> ​​चरण बनाएँ -> बंडल संसाधन कॉपी करें और info.plist निकालें।

नोट: यदि आप किसी एक्सटेंशन का उपयोग कर रहे हैं, तो टारगेट से उस एक्सटेंशन की जानकारी हटा दें।

आशा करता हूँ की ये काम करेगा।


मुझे भी इसी समस्या का सामना करना पड़ा और मैंने वही किया, जो @cdeerinck ने सुझाया था और निम्नलिखित https://github.com/Yummypets/YPImagePicker/issues/236 पहुंच गया, जिसने बैच मोड को अक्षम करने के लिए बिल्ड सेटिंग्स में एक उपयोगकर्ता-परिभाषित चर जोड़ने का सुझाव दिया अर्थात SWIFT_ENABLE_BATCH_ODE नाम का एक नया उपयोगकर्ता परिभाषित चर जोड़ें और इसे NO पर सेट करें। मैं इस मुद्दे में और अधिक जानकारी प्राप्त करने में सक्षम था और मुझे पता चला कि त्रुटि कॉमन क्रिप्टोकरंसी के उपयोग से एक फ्रेमवर्क में थी, जिसे इसमें (मेरे द्वारा) जोड़ा गया था, लेकिन Xcode 10 के बाद से यह मूल रूप से स्विफ्ट (Apple प्लेटफार्मों के लिए) के हिस्से के रूप में सामने आया है ), और इसे जोड़ने (या पिछले संस्करण से इसका अस्तित्व) नाम टकराव पैदा कर रहा था और इसलिए यह त्रुटि फेंक रहा था। इस लिंक को अधिक जानने के लिए जो इस मुद्दे को और अधिक विस्तार से बताता है।


मेरा एक नाम रिक्ति मुद्दा था। मेरे पास एक ही नाम वाली दो फाइलें थीं। बस उनका नाम बदल दिया और यह हल हो गया।

हमेशा कहीं और देखने से पहले पहले 'बेवकूफ मुझे' बॉक्स की जाँच करें। :)


मेरी समस्या यह थी कि मैं एक देशी स्विफ्ट कॉमनट्रिप्टो के गैर-अस्तित्व के कारण था, एक ब्रिजिंग हेडर और एक लक्ष्य का उपयोग किया जो कि कुछ जादू के साथ इसे निर्माण में शामिल किया। चूंकि CommonCrypto अब देशी है, इसलिए मैंने टारगेट और #import को हटाकर समस्या को हल कर दिया और इसके बजाय एक import CommonCrypto जोड़ import CommonCrypto जहाँ मैंने इसका उपयोग किया।


मेरे पास यह मुद्दा था और इंक्रीमेंटल से पूरे मॉड्यूल के लिए परियोजना के लिए संकलन मोड सेटिंग को बदलना मेरे लिए इसे तय किया।


मेरे मामले में समस्या 3 के स्विचित 3 पर सेट होने के कारण वॉचकट एक्सटेंशन के कारण थी जबकि मुख्य प्रोजेक्ट का लक्ष्य 4.2 को स्विफ्ट करना था


मेरे लिए, त्रुटि संदेश ने कहा कि मेरे पास स्विफ्ट के निर्माण के लिए बहुत सारी सिम्युलेटर फाइलें थीं। जब मैंने सिम्युलेटर छोड़ दिया और फिर से बनाया, तो सब कुछ काम किया।


मेरे लिए, सिर्फ Shift Project K & Option Shift Command K का उपयोग करके सफाई परियोजना काम करती है।


मैंने पूरी वेब पर खोज की लेकिन मुझे इस समस्या का कोई समाधान नहीं मिला। मैं अनुभाग में "सामान्य क्रिप्टो" पथ को हटाने में कामयाब रहा: बिल्ड सेटिंग्स में महत्वपूर्ण पथ। समस्या यह है कि "आम क्रिप्टो" अब ios 12 एसडीके में नींव में मौजूद है लगता है।

इसलिए":

निर्माण सेटिंग्स में फ़ाइल "सामान्य क्रिप्टो" के लिए बस पथ को हटा दें और परियोजना एक आकर्षण की तरह निर्माण करेगी! :)


मैंने प्रयास किया

  • समापन और फिर से खोलना Xcode
  • सफाई बनाएँ फ़ोल्डर
  • pod install --repo-update

और इन सभी ने अभी भी समस्या को ठीक नहीं किया है।

मैक को पुनः आरंभ करके चाल चली गई !


यहाँ समाधान है: - सेटिंग्स का निर्माण करने के लिए जाओ - खोज SWIFT_COMPILATION_MODE - यदि यह रिलीज़ कॉन्फ़िगरेशन के लिए "पूर्ण मॉड्यूल" है, तो इसे "इंक्रीमेंटल" में बदल दें। - अब संग्रह करें।

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


वर्तमान में मेरा निर्माण काम कर रहा है। यहाँ आप चरणों की कोशिश कर रहे हैं जब तक यह अंत में काम किया:

  1. पूरे प्रोजेक्ट में कॉमनट्रिप्टो शब्द खोजें।
  2. यदि आपके पास एक हेडर है जिसमें हेडर आयात है, तो पॉडफाइल से इस पॉड को हटा दें और पॉड इंस्टॉल करें।
  3. प्रोजेक्ट को साफ करें और उसका निर्माण करें।
  4. पॉडफाइल में फिर से पॉड जोड़ें और एक पॉड इंस्टॉल करें।
  5. यदि संभव हो तो एक वास्तविक डिवाइस का उपयोग करके परियोजना को फिर से साफ और निर्माण करें।

और यदि आपके पास वह पॉड नहीं है, तो शायद आप कुछ पुराने पॉड के साथ वही कदम उठाकर प्रयास कर सकते हैं, जो आपके प्रोजेक्ट में हो सकते हैं।

अतिरिक्त जानकारी: यदि आपके पास पोड के अंदर कुछ कोड त्रुटि है, तो पहले आपको उस कोड समस्या को हल करने की आवश्यकता है और फिर परियोजना को फिर से संकलित करने का प्रयास करें।

मैं अपने प्रोजेक्ट में किए गए परिवर्तनों को कॉपी करने जा रहा हूं। पीपीएक्सएक्सप्रोज। मुझे पता है कि यह बहुत उपयोगी नहीं है, लेकिन यह एकमात्र ऐसी चीज है जो बदलाव के लिए प्रतिबद्ध है:

Removed: BDC9821B1E9BD1B600ADE0EF /* (null) in Sources */ = {isa = PBXBuildFile; };
Added:   BDC9821B1E9BD1B600ADE0EF /* BuildFile in Sources */ = {isa = PBXBuildFile; };

मुझे उम्मीद है कि यह मदद कर सकता है,

सादर।





xcode10