2011-10-27 24 views
5

मैं Module::Starter :(का उपयोग किए बिना कुछ मॉड्यूल बना लिए एक MANIFEST फ़ाइल कैसे बनाएं। मैं अपने परीक्षण चलाने के लिए एक MANIFEST फ़ाइल का निर्माण करने की जरूरत है। मैं हाथ से यह करना चाहिए, या वहाँ एक स्वचालित तरीका नहीं है ? आप Dist::Zilla स्थापित कर लेते हैं इसे बनाने कीएक पर्ल मॉड्यूल

+2

मैं अपना स्वीकृत उत्तर नहीं हटा सकता, लेकिन एक बेहतर जवाब है। तो, कृपया दूसरे को स्वीकार करें। अन्यथा, मेरा जवाब नीचे गिरने जा रहा है। –

उत्तर

19

बिल्ड टूल के आधार पर make manifest या ./Build manifest चलाएं।

यह आपके लिए mkmanifest पर कॉल करेगा।

+3

मॉड्यूल :: स्टार्टर का उपयोग किया गया था या नहीं, अगर मेकफ़ाइल.पीएल या बिल्ड.पीएल हाथ से लिखा गया है, तो यह एक अच्छी सिफारिश है। – xdg

+0

सच है। मुझे लगता है कि मैंने सवाल भी सचमुच लिया था। यह निश्चित रूप से एक बेहतर उत्तर है (हालांकि मुझे नहीं लगता कि मेरे उत्तर को वोट देने की आवश्यकता है)। –

+0

मैं इसके साथ एक छोटी नौसिखिया हूँ। अगर मैं सिर्फ मैनिफेस्ट को कॉल करता हूं तो मुझे मिलता है: 'मैनिफेस्ट के लिए कुछ भी नहीं किया जाना चाहिए' – gideon

4

, आप एक सरल dist.ini फ़ाइल सेट कर सकते हैं और फिर से चलाने के dzil build यह एक वितरण को रिहा करने के लिए एक MANIFEST और अन्य आवश्यक फ़ाइलें पैदा करेगा

4

ठीक है, वहाँ है ExtUtils::Manifest।।:

mkmanifest

mkmanifest(); 

में और अपने को प्रकट करने में वर्तमान निर्देशिका के नीचे सभी फ़ाइलें लिखता है। यह यूनिक्स के परिणाम के लिए इसी तरह काम करता है आदेश

find . > MANIFEST 

सभी फ़ाइलें है कि एक फ़ाइल MANIFEST.SKIP में किसी भी रेगुलर एक्सप्रेशन से मेल (यदि वह मौजूद) अनदेखी कर रहे हैं।

कोई भी मौजूदा मैनिफ़ेस्ट फ़ाइल MANIFEST.bak के रूप में सहेजी जाएगी।

उदाहरण के लिए:

perl -MExtUtils::Manifest=mkmanifest -e 'mkmanifest()' 

यह oneliner वर्तमान dir में प्रकट पैदा करेगा:

$ perl -mExtUtils::Manifest=mkmanifest -e 'mkmanifest()'
+0

http://perldoc.perl.org/ExtUtils/Manifest.html, धन्यवाद! – smonff

+0

इस उत्तर में मदद मिली लेकिन मुझे इसे बैश कमांड लाइन पर ऐसा करना पड़ा: 'perl -e' ExtUtils :: मेनिफेस्ट qw (mkmanifest) का उपयोग करें; mkmanifest(); ' – gideon

7

आप प्रकट का उपयोग कर ExtUtils::Manifest पैकेज बना सकते हैं। यदि आपके पास है तो यह MANIFEST.SKIP का भी उपयोग करेगा।

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