2013-02-25 16 views
13

मैंने एक नोड-मॉड्यूल बनाया है जिसमें एक निर्माण स्क्रिप्ट है जिसे इंस्टॉलेशन के बाद बुलाया जाता है। बिल्ड स्क्रिप्ट क्लोन एक गिट रिपॉजिटरी है और इसकी कुछ फाइलें किसी अन्य फ़ोल्डर में कॉपी करती हैं। समस्या: NPM स्थापित पर, स्क्रिप्ट पर्याप्त अनुमतियाँ नहीं मिलता है और मैं निम्नलिखित त्रुटि मिलती है:एनपीएम इंस्टॉल - पर्याप्त अनुमतियों के साथ बिल्ड स्क्रिप्ट कैसे चलाएं?

sh: ./build.js: Permission denied

मैं अपना काम करने में निर्माण स्क्रिप्ट पर्याप्त अनुमतियाँ कैसे दे सकते हैं?

मैं चाहता हूं कि उपयोगकर्ता सिर्फ npm install mymodule कर सकें और बिल्ड-स्क्रिप्ट किसी भी सिस्टम पर अपना काम करे।

कोई विचार?

उत्तर

28

क्या आपके पास पर x ध्वज है?

chmod +x build.js 

और अपनी स्क्रिप्ट की पहली पंक्ति को बताना चाहिए कि कैसे खोल से स्क्रिप्ट को निष्पादित करने के लिए:

#!/usr/bin/env node 
+1

आह! एनपीएम दस्तावेज से, मैंने सोचा कि ".js" के साथ स्क्रिप्ट स्वचालित रूप से नोड द्वारा निष्पादित की जाती है। लेकिन चूंकि उन्हें अभी भी स्क्रिप्ट के रूप में जाना जाता है और इस प्रकार निष्पादित करने की अनुमति की आवश्यकता होती है, यह स्पष्ट है। धन्यवाद। आपके द्वारा उल्लेखित 2 परिवर्धनों के बजाय, मैं पैकेज.जेसन में "इंस्टॉल" लिख सकता हूं: "नोड बिल्ड"। –

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