में पैकेज बनाते समय एकाधिक फ़ाइलों को जोड़ना मैं आर में एक पैकेज बनाने की कोशिश कर रहा हूं जिसमें मैंने कई नए कस्टम क्लासेस बनाए हैं। प्रत्येक वर्ग एक अलग फ़ाइल में है। कक्षाएं अभिभावक वर्ग से प्राप्त होती हैं और अन्य वर्गों के उत्तराधिकारी होती हैं।आर
मेरे कोड चल रहा जबकि मैं बेटा कक्षा में परिभाषित में पोता क्लास द्वारा आवश्यक तरीकों में से कुछ के लिए यह
source("package/father.R")
source("package/son.R")
source("package/grandson.R")
परिभाषा की तरह उनमें से प्रत्येक कहते हैं। मैं उनमें से प्रत्येक को कॉल करने और पैकेज बनाने के लिए package.skeleton() का उपयोग करता हूं और ऐसा लगता है कि यह ठीक काम करता है। लेकिन आर सीएमडी चेक (और आर में स्थापित करने का प्रयास करते समय) चलाते समय, यह एक त्रुटि फेंकता है क्योंकि फ़ंक्शन फ़ाइलों को वर्णानुक्रम में कॉल करने का प्रयास करता है और इसलिए फ़ाइल पोते हैं। आर को बेटे के सामने बुलाया जाता है। आर और यह दिखाता है और त्रुटि देता है कि विधियों को परिभाषित नहीं किया गया है। यदि मैं नामों को zgrandson.R में बदलता हूं, आर ने उस फ़ाइल को अंतिम कहा, और सब कुछ ठीक काम करता प्रतीत होता है, लेकिन यह स्पष्ट रूप से समस्या का समाधान नहीं है।
मैंने पैकेज बनाने के लिए ट्यूटोरियल पढ़े हैं, लेकिन उनमें से सभी साधारण मामलों से निपटने लगते हैं जहां आर आशा में कोई विरासत/कॉलिंग नहीं है। आशा है कि मैंने खुद को स्पष्ट कर दिया है।
पहली पोस्ट पर अच्छा काम। –
"अगर मैं zgrandson.R में नाम बदलता हूं, आर ने उस फ़ाइल को अंतिम कहा, और सब ठीक काम करने लगता है, लेकिन यह स्पष्ट रूप से समस्या का समाधान नहीं है।" क्यूं कर? यह वही समाधान है जिसका मैं उपयोग करता हूं और कई अन्य भी ('00Classes.R'' जैसी कुछ स्क्रिप्ट शुरू करें)। –
यह ठीक काम कर रहा है, लेकिन समस्या को हल करने के लिए ऐसे बदसूरत/हैकिश तरीके की तरह दिख रहा था: डी। मुझे यह बताने के लिए धन्यवाद कि अन्य लोग इस कामकाज का भी उपयोग कर रहे हैं। हालांकि मुझे आश्चर्य है कि समस्या मेरे कोड संरचना के साथ ही है, क्योंकि मेरे द्वारा चलाए गए अच्छे प्रोग्रामर द्वारा लिपियों में से कोई भी अन्य फाइलों को कॉल करने लगता है। –