मैंने एक जिज्ञासु मुद्दे में भाग लिया है - जाहिरा तौर पर कुछ Node.js मॉड्यूल में इतना गहरा फ़ोल्डर पदानुक्रम है कि विंडोज कॉपी कमांड (या पॉवरशेल Copy-Item
है जो हम वास्तव में उपयोग कर रहे हैं) कुख्यात "पथ बहुत लंबा" त्रुटि को मारता है जब पथ 250 पर होता है लंबे समय तक।
उदाहरण के लिए, यह एक फ़ोल्डर पदानुक्रम है जो एक एकल नोड मॉड्यूल बना सकता है:
node_modules\nodemailer\node_modules\simplesmtp\node_modules\
xoauth2\node_modules\request\node_modules\form-data\node_modules\
combined-stream\node_modules\delayed-stream\...
यह पागलपन लगता है लेकिन नोड मॉड्यूल के साथ एक वास्तविकता है।
हमें परिनियोजन के दौरान कॉपी-पेस्ट का उपयोग करने की आवश्यकता होती है (हम हेरोकू जैसे "चतुर" लक्ष्य प्लेटफ़ॉर्म का उपयोग नहीं कर रहे हैं, जहां गिट तैनाती एक विकल्प होगा) और यह विंडोज पर एक गंभीर सीमा है।
क्या कोई npm कमांड या कुछ ऐसा नहीं है जो node_modules
फ़ोल्डर को कॉम्पैक्ट करेगा या शायद केवल वही शामिल हो जो वास्तव में रनटाइम पर आवश्यक हो? (नोड मॉड्यूल्स में आमतौर पर test
फोल्डर आदि होते हैं, जिन्हें हमें परिनियोजित करने की आवश्यकता नहीं होती है।) कोई अन्य विचार इसके आस-पास कैसे काम करें? विंडोज का उपयोग नहीं करना दुर्भाग्य से एक विकल्प नहीं है :)
npm install
लक्ष्य वातावरण में निष्पादित करने का समर्थन नहीं करता है, यह स्थानीय रूप से एक "परिनियोजन पैकेज" (मूल रूप से एक ज़िप प्लस कुछ मेटाडेटा) बनाकर काम करता है जिसे तब लक्षित मशीन पर अपलोड किया जाता है, जिसे वहां निकाला जाता है और यह है। इसलिए मुझे node_modules
सीधे शामिल करने की आवश्यकता है ।
package.json
साथdependencies
है? यदि हां, तो क्या आप बिनाnode_modules
npminstall
याupdate
निर्भरता के कॉपी कर सकते हैं और उपयोग कर सकते हैं ?