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


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

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

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

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

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

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

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


2694
2018-02-03 17:32


मूल




जवाब:


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

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 उन्हें हटाने के लिए।


694
2018-02-03 18:49



नीचे से कॉपी किया गया: यह और दूसरा, बहुत ही समान उत्तर वही है जो मैं खोज रहा था, लेकिन दुर्भाग्य से समस्या को हल करने के लिए प्रतीत नहीं होता है। मैं इसे एडोब बग मजेदार टीएम तक ले जाने जा रहा हूं। हालांकि, मैं इसे हल करने के रूप में चिह्नित करने जा रहा हूं। - Ender
पीएस: मैंने मेनू आइटम पर और अधिक क्लिक किया है। आखिर में जेनिन के आखिरी इकोज़ वाली फाइलों को समाप्त करने के लिए मैंने खोज में फ़ाइल संरचना में गहराई से उतर लिया है। वे वहां नहीं हैं। जब मैं उनके बारे में पूछता हूं, फ्लैश बस कुछ अनजान होता है और अंतरिक्ष में नजर रखता है। मुझे लगता है कि मैं अपने माउस बटन के पागल हथौड़ा पर कुछ सुनना शुरू कर सकता हूं। जेनिन हंस रहा है। - Ender
@ एन्डर, क्या आप एक ही समस्या का अनुभव करते हैं यदि आप नए बॉक्स पर कोड को ताज़ा संकलित करते हैं। एक नए कंप्यूटर पर कोड के ताजा चेकआउट की तरह? यह आपको बताएगा कि क्या कोड या चीजों के साथ समस्या है या नहीं तुंहारे फाइल सिस्टम*। - Jesse Webb


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

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

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


198
2018-02-03 18:40





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


164
2018-02-03 20:25





मुझे एक संबंधित व्यवहार मिला है जो मदद कर सकता है (लगता है जैसे आपकी विशिष्ट समस्या गहराई से चलती है):

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

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


125
2018-02-03 18:04



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


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

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

102
2018-02-05 16:55





क्या आपके पास कई swf-files हैं? यदि आपकी कक्षा किसी एसएफएफ में आयात की जाती है, तो अन्य एसएफएफ की कक्षा के समान संस्करण का भी उपयोग किया जाएगा। * एक एसएफएफ में * के साथ एक पुराना आयात यह करेगा। सबकुछ पुन: संकलित करें और देखें कि यह काम करता है या नहीं।


96
2018-02-04 04:26



हाँ, मैं शर्त लगा रहा हूं कि जेनिन आपके कोड के किसी अन्य भाग में संकलित है, या तो एक एसएफएफ़ या एक एससीसी जिसका आप उपयोग कर रहे हैं। - Arpit


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


10
2017-07-02 01:41



मेरा अनुमान है कि आप नीचे क्यों गए थे, यह होगा कि आपने एक स्पष्ट स्पष्ट उत्तर दिया है और दृढ़ता से निहित किया है कि इससे समस्या हल हो जाएगी। आपका उत्तर जरूरी नहीं है, लेकिन आपके phrasing को अन्यायपूर्ण रूप से अतिसंवेदनशील या शरारती होने के रूप में व्याख्या किया जा सकता है, जो कभी-कभी लोगों को परेशान करता है। - Erhannis
हम्म। शायद आप ठीक कह रहे हैं। दूसरी ओर, यह निराशाजनक है जब प्रश्न मेरे जैसे स्पष्ट प्रश्नों के उत्तर प्रदान नहीं करता है। कुछ ऐसा है जैसे "मैंने सभी फाइलों में स्ट्रिंग जेनिन की खोज की है, लेकिन एक मैच नहीं मिला"। मेरे साथ षड्यंत्र रचा गया। मैं इस रहस्य को हल करना चाहता हूं। लेकिन लेखक मुझे फांसी छोड़ देता है। - Ark-kun
जैसा कि मैंने कहा, आपका जवाब जरूरी नहीं था; यह हो सकता है कि आपका phrasing किसी को नाराज हो। ईमानदारी से, यह मेरी पहली प्रतिक्रिया थी। मैं आम तौर पर चीजों को "उम्मीद है कि इससे मदद मिलेगी ", यह देखते हुए कि चीजों का असली कारण यह नहीं है कि आप क्या सोचेंगे। फिर, मैं आपका जवाब मानता हूं है किसी को भी कोशिश करनी चाहिए, और इसलिए एक सबमिट किए गए उत्तर के रूप में विचार की योग्यता है, लेकिन वाक्यांश कभी-कभी लोगों को इससे अधिक प्रभावित करता है। - Erhannis