2008-10-11 8 views
6

के साथ घटक libs को हल करना मैं फ्लेक्स एसडीके के लिए नया हूं और Doug Mccune's CoverFlow विजेट का उपयोग कर एक साधारण प्रोजेक्ट को कार्यान्वित करने का प्रयास कर रहा हूं। ऐसा करने के तरीके पर वहां से अधिकांश दस्तावेज यह मानते हैं कि कोई एडोब के फ्लेक्सबिल्डर उत्पाद का उपयोग कर रहा है, जो एक $ 250 ग्रहण प्लग-इन है जिसे मैं खरीदने से बचाना चाहता हूं। मेरी समस्या यह है कि बस डौग की एससीसी फाइल प्राप्त कर रही है, जो कि उनके घटक lib का द्विआधारी संस्करण है, जिसे एमएक्सएमएलसी, फ्लेक्स एसडीके प्रोजेक्ट कंपाइलर द्वारा मान्यता प्राप्त है। मैं त्रुटि संदेश इस तरह केफ्लेक्स एसडीके mxmlc

Error: Could not resolve to a component installation

और

Error: Type was not found or was not a compile-time constant: CoverFlow.

के रूप में मैं भी प्रकार "VideoCoverFlow" की कोशिश की है के रूप में मैं बहुत यकीन है कि इन प्रकार डौग lib में परिभाषित कर रहे हैं रहा हूँ जा रहे हैं। हां, मैं यह पता लगाने पर अटक गया हूं कि मैं गलत कहां गया हूं।

निम्नलिखित mxml प्रोजेक्ट फ़ाइल के लिए पूर्ण पाठ है, जिसे coverflow.mxml कहा जाता है।

<?xml version="1.0" encoding="utf-8"?> 

<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:local="*" 
    height="100%" 
    width="100%" 
    layout="absolute"> 

    <local:CoverFlow 
     id="CoverFlow" 
     horizontalCenter="0" 
     verticalCenter="0" 
     borderThickness="10" 
     borderColor="#FFFFFF" 
     width="100%"/> 

</mx:Application> 

मैं निम्न आदेश के साथ संकलित करने के लिए कोशिश कर रहा हूँ:

c:\flex_sdk_3\bin\mxmlc.exe -compiler.source-path=lib coverflow.mxml 

मैं भी चलती CoverFlow_lib.swc MXML फ़ाइल के रूप में एक ही निर्देशिका में फाइल के बजाय स्रोत-पथ का उपयोग कर की कोशिश की है तर्क, लेकिन ऐसा कोई फर्क नहीं पड़ता है।

अगर मैं उचित दस्तावेजों की दिशा में मुझे इंगित करने के लिए बहुत दयालु हो सकता तो मैं खुशी से आरटीएफएम जाऊंगा। संबंधित स्टैक ओवरफ़्लो प्रश्न here और here संबंधित हैं।

धन्यवाद!


अद्यतन: मैं निम्नलिखित करने के लिए अपने निर्माण आदेश को बदल दिया है:

mxmlc -library-path+=lib coverflow.mxml 

और मैं भी निम्न की कोशिश की:

mxmlc -library-path+=CoverFlow_lib.swc coverflow.mxml 
एक ही निर्देशिका में SWC फ़ाइल के साथ

एमएक्सएमएल फ़ाइल के रूप में। हालांकि, मुझे अभी भी वही त्रुटियां मिल रही हैं।

एक video here भी एक ही लाइब्रेरी दिखा रहा है जिसे मैं उपयोग करने का प्रयास कर रहा हूं, लेकिन फ्लेक्स बिल्डर में। दुर्भाग्य से, यह दिखाता है कि mxmlc का उपयोग कैसे करें।

मैं भी बस के लिए अपनी MXML नीचे अलग करना की कोशिश की करने के बाद,

<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:local="*" > 

    <local:VideoCoverFlow /> 

</mx:Application> 
+0

मैंने आपके द्वारा लिंक की गई साइट से कवर प्रवाह उदाहरण डाउनलोड किए हैं और उनमें वीडियोकॉवरफ़्लो नामक श्रेणी शामिल नहीं है। संभावना है कि किसी ने फ्लेक्स में उनका उपयोग करने के लिए एक मैनिफेस्ट स्थापित किया हो। आपको xmlns: local = "com.dougmccune.containers" सेट करने की आवश्यकता है और फिर स्थानीय का उपयोग करें: VCoverFlowContainer –

उत्तर

9

यहाँ एक link to the mxmlc command line tool docs from Adobe और एक direct link to the command line options reference. मैं भी mxmlc -help list को खोजने के लिए एक अच्छी जगह शुरू करने के लिए हो रहा है।

जैसा कि एक और पोस्टर अनुशंसित है, आप वास्तव में library-path का उपयोग करना चाहते हैं ताकि एससीसी फ़ाइल वाली निर्देशिका में पथ जोड़ सकें।बनाने के लिए + = ऑपरेटर का उपयोग सुनिश्चित करें कि आप पिछले मान

उदा)

c:\flex_sdk_3\bin\mxmlc.exe -library-path+=lib coverflow.mxml 
1

यदि यह एक SWC है आप स्रोत-पथ पुस्तकालय-पथ के बजाय का उपयोग नहीं किया जाना चाहिए और SWC संदर्भित?

0

मैं अंत में मिला अपने प्रोजेक्ट के निर्माण के लिए ऊपर लिख नहीं है। लाइब्रेरी-पथ का उपयोग समाधान का हिस्सा था, लेकिन मुझे डौग मैक्यून लाइब्रेरी के स्रोतों पर भी नज़र डालना पड़ा ताकि मैं सही पथ जानकारी का उपयोग कर सकूं और मेरे एमएक्सएमएल में नाम टाइप कर सकूं।

जीतने कमांड लाइन

mxmlc -library-path+=lib coverflow.mxml 

है और काम कर रहे MXML

<?xml version="1.0" encoding="utf-8"?> 

<mx:Application 
    xmlns:mx="http://www.adobe.com/2006/mxml" 
    xmlns:coverflow="com.dougmccune.coverflow.*" 
    xmlns:containers="com.dougmccune.containers.*" 
    xmlns:local="*" > 

    <containers:CoverFlowContainer id="flow" /> 

</mx:Application 

है किसी कारण अगर मैं id="coverflow" का उपयोग अपने कंटेनर की शिकायत के लिए। मुझे यह कहते हुए एक त्रुटि मिलती है कि आईडी नाम और प्रकार का नाम समान नहीं है। अगर कोई मुझे यह समझा सकता है, तो मुझे समझना अच्छा लगेगा कि वहां क्या हो रहा है।

मदद के लिए धन्यवाद, साइमन और जेम्स।

+1

मुझे लगता है कि ऐसा इसलिए है क्योंकि आपके पास कवरफ्लो नामक एक xmlns है ताकि आप फ़ाइलों के प्रतीक तालिका को उसी नाम से दो प्रतीकों से भर रहे हों। आपको xmlns की आवश्यकता नहीं है: coverflow या xmlns: स्थानीय –

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