2009-04-18 30 views
12

मैं 3 पैकेज, ए, बी और सी बनाने की कोशिश कर रहा हूं ए बी और सी में उपयोग की जाने वाली कुछ बेस क्लास को परिभाषित करता है। मुझे उन सभी 3 को एक ही प्रोजेक्ट समूह में मिला है , सभी एक ही कस्टम बीपीएल आउटपुट फ़ोल्डर में आउटपुट के लिए सेट अप। इस फ़ोल्डर में बी और सी के लिए खोज पथ में है लेकिन जब मैं बी और सी के निर्माण के लिए जाना है, संकलक chokes सूची आवश्यक है पर। "आवश्यक पैकेज 'ए' नहीं मिला।"डेल्फी: आवश्यक पैकेज नहीं मिला

मैं कैसे जहां एक तो वे सही ढंग से निर्माण करेंगे खोजने के लिए बी और सी बताऊँ?

+1

यह देखने के लिए मान्य है कि आपके जैसे सुपरस्टार भी इस तरह की समस्याओं में भाग लेते हैं! (आपने मुझे कई बार मदद की है)। स्पष्ट प्रश्न पोस्ट के लिए धन्यवाद। – Jamo

+1

मुझे एक ही समस्या है। फाइल मौजूद हैं, फ़ोल्डर बाहर निकलें, पथ सेट हैं। डेल्फी का कहना है कि इसे पैकेज नहीं मिल रहा है। या तो यह डीसीपी फ़ाइल, बीपीएल फ़ाइल, या फ़ोल्डर/पथ विन्यास नापसंद करता है। लवली। –

उत्तर

14

या तो पैकेज नहीं पाया जा सकता है, या संकलक उलझन में है। बाद के मामले में, कभी-कभी पुनरारंभ करने में मदद मिलती है। फिर मैनुअल क्रम में सभी संकुलों से बना है।

यदि यह वास्तव में नहीं मिला है, तो जांचें कि क्या सभी पैकेज (बीपीएल और डीसीपी) और डीसीयू फ़ाइलें उपलब्ध हैं या नहीं। आपको दोनों की जरूरत है

+5

यह समस्या बन गई। मुझे यह बताने की ज़रूरत थी कि डीसीपी फाइल को कहां मिलना है। –

+0

एक बार उस के साथ संघर्ष किया। –

+0

अब यह समस्या एक डीसीपी फ़ाइल के साथ है जो मौजूद है लेकिन कुछ और डेल्फी को परेशान कर रहा है और यह डीसीपी फ़ाइल नहीं पढ़ेगा, पुनरारंभ करने की कोई भी राशि मदद नहीं करेगा, या पुनर्निर्माण नहीं करेगा। –

1

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

9

यदि ऐसा होता है तो आईडीई पैकेज लोड करने का प्रयास कर रहा है: आपकी पैकेज आउटपुट निर्देशिका (जहां * .bpl फ़ाइलें जाती हैं) आपके सिस्टम के पाथ पर्यावरण चर पर होनी चाहिए। पैकेज स्थिर रूप से जुड़े डीएलएल हैं, विंडोज़ उन्हें लोड करने के लिए उन्हें ढूंढने में सक्षम होना चाहिए।

यदि पैकेज बनाते समय ऐसा होता है: आपकी सभी डीसीपी आउटपुट निर्देशिका (जहां * .dcp फ़ाइलें जाती हैं) निर्भर परियोजनाओं के खोज पथ में होनी चाहिए ताकि संकलक संकलित संकुल पा सकें। तुम भी खाली पैकेज परियोजना के डीसीपी उत्पादन निर्देशिका छोड़ सकते हैं - जो मामले में वैश्विक डीसीपी उत्पादन निर्देशिका उपकरण \ विकल्प \ लाइब्रेरी में सेट किया जाता है; आश्रित परियोजनाओं को तब उन्हें अपने खोज पथ में शामिल करने की आवश्यकता नहीं है।

+0

वाह, एक बीपीएल फ़ोल्डर आपके पथ में नहीं है। आईडीई इस बारे में चिंतित होना चाहिए। –

2

यह संभव है कि आवश्यक पैकेज का नाम उस संकुल के 'आवश्यक' खंड में गलत तरीके से निर्दिष्ट किया गया है जिसे आप संकलित करने का प्रयास कर रहे हैं। आइए एक उदाहरण लें:

हमारे पास दो पैकेज हैं - VirtualTreesR.dpk और VirtualTreesD.dpk। वर्चुअल टीआरडीडी को वर्चुअल टीआरआरआर की आवश्यकता है। वे दोनों '16' प्रत्यय है, तो वे दोनों VirtualTreesR16.bpl और VirtualTreesD16.bpl के रूप में डेल्फी परियोजना प्रबंधक विंडो में प्रदर्शित कर रहे हैं। आप सोच सकते हैं कि ये पैकेज के नाम हैं, लेकिन आप गलत हैं। संकुल के नाम अभी भी VirtualTreesR और VirtualTreesD, नहीं VirtualTreesR16 और VirtualTreesD16 हैं।

जब VirtualTreesR.dpk संकलित किया गया है डेल्फी दो फ़ाइलों का उत्पादन (मैं DCUs यहाँ के बारे में बात नहीं करते हैं) VirtualTreesR * * .bpl और VirtualTreesR.dcp। फर्क देखें?

फिर हम VirtualTreesD.dpk संकलित करने का प्रयास करते हैं और त्रुटि प्राप्त करते हैं: "[DCC घातक त्रुटि] VirtualTreesD.dpk (35): E2202 आवश्यक पैकेज 'VirtualTreesR16' नहीं मिला"।

त्रुटि इसलिए होता है क्योंकि 'की आवश्यकता है' VirtualTreesD.dpk पैकेज के खंड निम्नलिखित लाइनों में शामिल हैं:

 

    requires 
     designide, 
     VirtualTreesR16; 
 

डेल्फी VirtualTreesR16.dcp खोजने की कोशिश करता है और विफल रहता है, भले ही डेल्फी खोज पथ और पथ वातावरण परिवर्तनीय सही ढंग से सेट हैं क्योंकि कोई वर्चुअल TreesR16.dcp नहीं है। केवल VirtualTreesR.dcp।

 

    requires 
     designide, 
     VirtualTreesR; 
 

आशा है कि यह मदद करता है:

समाधान तो यह नीचे एक तरह दिखेगा 'की आवश्यकता है' खंड ठीक करने के लिए है।

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

0

मुझे कभी-कभी डेल्फी प्रोजेक्ट मैनेजर संदर्भ मेनू के माध्यम से आवश्यक पैकेज जोड़ते समय "पैकेज नहीं मिला" त्रुटि प्राप्त होती है। (एक पैकेज आदेश खोलें, सही "आवश्यक" पर क्लिक करें, चुनें "संदर्भ जोड़ें ...")

इसके बजाय यह संपादन पैकेज प्रोजेक्ट फ़ाइल मैन्युअल रूप से आवश्यक पैकेज को जोड़ने के लिए आसान है:

  1. पैकेज का चयन करें परियोजना प्रबंधक में। उदाहरण के लिए MyPackage.bpl। प्रोजेक्ट फ़ाइल खोलने के लिए
  2. Ctrl+V
  3. आवश्यक पैकेज में आवश्यक पैकेज जोड़ें।
  4. आवश्यक पैकेज सुनिश्चित करें * डीसीपी फ़ाइल पैकेज खोज पथ में है।
संबंधित मुद्दे