2011-11-10 17 views
68

आप प्रत्येक ऐप के विकास में एक निश्चित बिंदु पर आते हैं जो आप सिम्युलेटर में जो देखते हैं वह मेल नहीं खाता है जो आपको लगता है। अधिकांशतः ये मानव त्रुटियां हैं - या कम से कम वे में मेरे मामलों में हैं ;-) - लेकिन कभी-कभी एक्सकोड में 'खो गया ट्रैक' होता है, या ऐसा लगता है। मैंने सीखा है कि Clean (Shift + Cmd + K) और Clean Build Folder… (विकल्प + Shift + Command + K) मेनू विकल्प आपकी त्रुटि या एक्सकोड के बीच अंतर दिखा सकते हैं।एक्सकोड 4 "क्लीन" बनाम "क्लीन बिल्ड फ़ोल्डर"

मेरा प्रश्न यह है:

क्या Clean आदेश है या नहीं करता है, जो Clean Build Folder… के लिए एक कारण अस्तित्व के लिए छोड़ देता है? मुझे एक दूसरे को कब चुनना चाहिए, क्यों न सिर्फ पूरे फ़ोल्डर को साफ करें?

+0

आप [इस संभावित नकल सवाल] में कुछ जवाब मिल सकता है (http://stackoverflow.com/questions/ 5714372/कैसे करने वाली खाली कैश-एंड-सफाई सभी लक्ष्यों को-xcode -4)। –

+1

वहां कुछ छिपे हुए संकेत हो सकते हैं, लेकिन यह पूरी तरह से एक डुप्लिकेट प्रश्न नहीं है। मेरा स्वच्छ और साफ निर्माण फ़ोल्डर, दो बहुत ही समान दिखने वाले आदेशों के बीच अंतर के बारे में है। लेकिन सिर के लिए धन्यवाद। – epologee

उत्तर

70

Clean… मौजूदा चयनित लक्ष्य के लिए फ़ोल्डरों साफ।
Clean Build Folder… सभी लक्ष्यों के लिए फ़ोल्डर साफ़ करता है।

+0

यह स्वीकार्य उत्तर होना चाहिए। –

+4

यह "सभी लक्ष्य के फ़ोल्डरों" में उस apostrophe के साथ संदिग्ध है। क्या आपका मतलब है "सभी लक्ष्यों के लिए फ़ोल्डरों या चयनित लक्ष्य से जुड़े कुछ अन्य फ़ोल्डर्स हैं? –

+0

यह उत्तर पूरा नहीं हुआ है। 'क्लीन बिल्ड फ़ोल्डर' केवल एक ही लक्ष्य के साथ परियोजनाओं में समस्याएं हल करता है। –

84

यदि आप उत्पाद मेनू से Clean चुनते हैं, तो यदि आप Clean Build Folder चुनते हैं तो यह संपूर्ण बिल्ड फ़ोल्डर को हटा देगा, तो एक्सकोड बिल्ड फ़ोल्डर में प्रत्येक फ़ोल्डर के अंदर फ़ाइलों को हटा देगा।

बाद Clean आदेश:

enter image description here बाद Clean Build Folder आदेश:

enter image description here

मुझे लगता है कि आप Clean Build Folder का चयन करना चाहिए जब आप एक द्विआधारी है कि आप AppStore करने के लिए जारी करने के लिए बनाना चाहते हैं, जब, आप अपनी परियोजना के साथ गड़बड़ कर चुके हैं या जब आपका ऐप "अज्ञात" कारण के लिए काम नहीं करता है, अन्यथा Clean का उपयोग करें।

मुझे आशा है कि मैं अपने प्रश्न का उत्तर दिया: डी

+2

बहुत स्पष्ट उत्तर, धन्यवाद! और छवियों के लिए एक +1 :) – epologee

+3

संदिग्ध होने के लिए खेद है, लेकिन यह अजीब लगता है। क्या आप कह रहे हैं कि दोनों के बीच एकमात्र अंतर यह है कि एक फ़ोल्डरों को हटा देता है और दूसरा फ़ोल्डरों को रखता है लेकिन सभी सामग्री को हटा देता है? क्या होगा चार खाली फ़ोल्डरों में अंतर? फिर भी सफाई के बीच एक उल्लेखनीय अंतर है और कभी-कभी बिल्ड फ़ोल्डरों को साफ करना पड़ता है ... – jowie

+3

हां, यह एकमात्र अंतर है। व्यक्तिगत रूप से मैं आईओएस सिम्युलेटर के लिए ऐप बनाने से पहले "साफ" मुझे कोड और/या एक्सकोड और "क्लीन बिल्ड फ़ोल्डर" के साथ अजीब समस्याएं हैं जब मैं ऐप स्टोर में ऐप प्रकाशित करना चाहता हूं या जब मैं यह सुनिश्चित करना चाहता हूं कि मेरा पीपी जमीन से ऊपर कैश के साथ बनाया गया है। – Aluminum

4

आप "स्वच्छ" चुनते हैं, Xcode हर फ़ोल्डर के अंदर फाइलों को नष्ट करेगा फ़ोल्डर बिल्ड में, वर्तमान लक्ष्य के लिए (उदा, उत्पाद, मध्यवर्ती।)। अन्य लक्ष्यों के लिए फ़ाइलें रहती हैं।

यदि आप "क्लीन बिल्ड फ़ोल्डर" का चयन करते हैं, तो एक्सकोड पूरे फ़ोल्डर को हटा देगा, इसलिए कुछ भी नहीं बचा है।

ज्यादातर मामलों में "स्वच्छ" "अज्ञात" कारणों के लिए काम करेंगे, लेकिन आप अभी भी "फ़ोल्डर बिल्ड साफ करने के लिए" में फ़ोल्डर के अंदर उत्पाद फ़ोल्डर में शामिल हैं क्योंकि Xcode फ़ाइलें नष्ट नहीं होगा।

0

~/Library/Developer/Xcode/DerivedData/xxx-ABCD पर कुछ फ़ाइलें, जहां xxx आपके प्रोजेक्ट या वर्कस्पेस का नाम है, Clean या Clean Build Folder... के बाद हटा दिया गया है। जाहिर है, Clean Build Folder...Clean से अधिक फ़ाइलों को हटा देगा। हालांकि, मुझे लगता है कि कुछ मामलों में पहले बताए गए फ़ोल्डर को हटाने की आवश्यकता है, जैसे आपका एक्सकोड ठीक तरह से काम नहीं कर सकता है।

वैसे, कुछ Xcode 8 के लिए बदल गया है, Build फ़ोल्डर सभी एक ही रखा जाता है के बाद Clean Build Folder...

संबंधित मुद्दे