मुझे डेल्फी में लिखे गए पुराने सॉफ़्टवेयर को बनाए रखना है। स्रोत पेड़ एक असली गड़बड़ है। मैं 2 चीजें करने की कोशिश कर रहा हूं: स्वच्छ निर्देशिका संरचना बनाने और स्वचालित निर्माण प्रक्रिया को स्थापित करने के लिए।तृतीय पक्ष घटकों के साथ परियोजना निर्देशिका संरचना
अभी मैं निर्देशिका वृक्ष
\Project \build\output \dist\release \dist\debug \doc \env \res \src
\src
निर्देशिका *.pas
और *.dfm
फ़ाइलें और project.dpr
शामिल निम्नलिखित का उत्पादन किया है। विभिन्न संसाधन (आइकन, छवियां और फोंट) \res
निर्देशिका में रहते हैं। \env
डीबगिंग उद्देश्यों के लिए विभिन्न वातावरण बनाने के लिए उपयोग किया जाता है। इस डीआईआर में project.exe बनाने के लिए आईडीई सेट किया गया था। बिल्ड स्क्रिप्ट build
फ़ोल्डर में संग्रहीत हैं। dcc32.exe
की सहायता से ये स्क्रिप्ट उत्पाद वितरण (exe में डीबग जानकारी के साथ और बिना) dist\release
और dist\debug
फ़ोल्डरों में उत्पाद वितरण का उत्पादन करती हैं। build\output
आईडीई या बिल्ड स्क्रिप्ट के अंदर बिल्ड प्रक्रिया के दौरान डीसीयू फाइलों को सहेजने के लिए प्रयोग किया जाता है।
मेरे दृष्टिकोण में थोड़ी गड़बड़ी है। मैं अपने कंप्यूटर से ताजा कंप्यूटर, चेकआउट कोड से शुरू नहीं कर सकता, स्क्रिप्ट बनाने शुरू कर सकता हूं और परियोजना के विघटन का उपयोग करने के लिए तैयार हो सकता हूं। मुझे पहले आईडीई खोलना होगा, आवश्यक घटकों को स्थापित करना होगा (उदा। RXLib
और MemoEx
), लाइब्रेरी पथ सेट करें और इसी तरह। केवल उन चरणों के बाद मैं अपनी बिल्डिंग स्क्रिप्ट चला सकता हूं।
यह पिछले सप्ताह तक एक बड़ी समस्या नहीं थी। मैंने एक बग को ठीक करने के लिए तीसरे पक्ष के घटक को संशोधित किया है (यह घटक अब और नहीं रखा गया है :-(), इसलिए मुझे इस प्रोजेक्ट की संरचना को मेरे प्रोजेक्ट की संरचना में जोड़ना होगा। इस बिंदु पर यदि मैं चेकआउट करूँगा रेपो मैं अगर वहाँ 3 पार्टी libs के कोड में परिवर्तन किया गया है की जाँच की जरूरत है। यदि libs का कोड बदल दिया गया था मैं घटकों पुनः संकलित करें और उन्हें पुनर्स्थापित करने के लिए की जरूरत है।
प्रश्न
- वहाँ घटकों को पुनर्स्थापित करने के कोई तरीका है डेल्फी 7 में कमांड लाइन से? क्या डी 7 के हार्डकोडिंग इंस्टॉलेशन पथ के बिना ऐसा करने का कोई तरीका है?
- प्रोजेक्ट पेड़ में आप तीसरे भाग घटकों के कोड को कैसे स्टोर करेंगे?
- मुझे
bpl
औरdcu
कहां रखना चाहिए जो घटकों के निर्माण के दौरान उत्पादित किया जाएगा। क्या मुझे उन्हेंProject\build\output
पर रखना चाहिए? या आउटपुट को किसी अन्य स्थान पर रखना बेहतर होगा (डेल्फी सेटिंग्स को ओवरराइड न करें), लेकिन प्रोजेक्ट कॉन्फ़िगरेशन में लाइब्रेरी पथ बदलें?
अच्छी जानकारी। यह वह उपकरण है जिसका निर्माण मैं करना चाहता हूं। फिर मैं जेवीसीएल इंस्टॉलर की जांच करता हूं जो इस तरह से शुरू हुआ, और मुझे लगता है, शायद मैं सिर्फ जेवीसीएल इंस्टॉलर को संशोधित करूंगा। –