flash - फ्लैश सीएस 4 जाने से इंकार कर देता है




caching flash-cs4 (5)

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

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

var jenineInstance:Jenine = new Jenine();
trace( getQualifiedClassName(jenineInstance));
// Should print: com.newnamespace.subspace::Jenine
// Prints: com.oldnamespace.subspace::Jenine
// Ah, young love!

हम लड़े। मुझे कुछ चीजों पर गर्व नहीं है जो मैंने कहा या किया था। अंत में, क्रोध के एक बड़े फिट में, मैंने जेनिन के सभी संदर्भों को पूरी तरह से हटा दिया। वह पूरी तरह से पूरी तरह से सिस्टम से मिटा दिया गया था। मेरा कर्सर "खाली ट्रैश" मेनू विकल्प पर गिर गया जैसे कि कास्केट के ठंड ढक्कन।

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

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

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


अपनी एएसओ फाइलों को हटाने का प्रयास करें।

एएसओ फाइलें आपकी कक्षा फाइलों के कैश किए गए संस्करण कैश किए गए हैं। यद्यपि परिवर्तन किए जाने पर पुराने कैश जाने के लिए आईडीई बहुत बेहतर होता है, कभी-कभी आपको उन्हें मैन्युअल रूप से हटाना पड़ता है। एएसओ फाइलों को हटाने के लिए: नियंत्रण> एएसओ फाइलों को हटाएं।

यह सीएस 3 में पेश किए गए बग को "आई-एम-नॉट-व्यू-माय-चेंज-सो-लेट-ए-एड-ए-ट्रेस-अब-सब कुछ-वर्क्स" बग का कारण भी है।


अपने पूरे प्रोजेक्ट फ़ोल्डर में फ़ाइलों के अंदर स्ट्रिंग्स oldnamespace और oldnamespace को खोजने के लिए grep एनालॉग का उपयोग करें। फिर आप जान लेंगे कि आगे क्या कदम है।


क्या होगा यदि आप इसे किसी अन्य मशीन का उपयोग करके संकलित करते हैं? एक ताजा स्थापित एक सुंदर होगा। मुझे आशा है कि आपकी मशीन ईर्ष्या नहीं है।


फ्लैश में अभी भी एएसओ फ़ाइल है, जो आपके वर्गों के लिए संकलित बाइट कोड है। विंडोज़ पर, आप यहां एएसओ फाइल देख सकते हैं:

C:\Documents and Settings\username\Local Settings\Application Data\Adobe\Flash CS4\en\Configuration\Classes\aso

मैक पर, निर्देशिका संरचना समान है /Users/username/Library/Application Support/

आप उन फ़ाइलों को हाथ से हटा सकते हैं, या फ्लैश में आप उन्हें हटाने के लिए Control->Delete ASO files को हटा सकते हैं।


साथ ही, अपनी नई नामांकित कक्षा का उपयोग करने के लिए आप भी कर सकते हैं

var jenine:com.newnamespace.subspace.Jenine = com.newnamespace.subspace.Jenine()