सवाल मॉड्यूल संस्करण मेल नहीं खाता। अपेक्षित 11, 1 मिला


Platform: Linux

मेरे node.js प्रोग्राम चलाते समय मुझे निम्न त्रुटि मिली

Error: Module version mismatch. Expected 11, got 1.

44
2018-03-23 07:45


मूल


लिनक्स के लिए अद्वितीय नहीं है। ओएसएक्स पर वही बात होती है। rm -rf node_modules; npm update ठीक कर देंगे। - Meekohi
सुनिश्चित करें कि node -v अपेक्षित एक और फिर है rm -rf node_modules; npm install - obotezat


जवाब:


आप इस तरह की त्रुटि दे सकते हैं:

Error: Module version mismatch. Expected 11, got 1.
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (/home/user/node_modules/xml2json/node_modules/node-expat/lib/node-expat.js:4:13)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

और फिर, आप मॉड्यूल में या कहीं भी त्रुटि देख सकते हैं।

ऐसा इसलिए है क्योंकि आपने अपना नोड अपडेट किया है, आप उपरोक्त मॉड्यूल का पुनर्निर्माण कर सकते हैं।

मैं अपने प्रश्न को फिर से हल करता हूं पुनः स्थापित(हटाएं, फिर इंस्टॉल करें) xml2json।

सौभाग्य!


54
2018-03-25 07:35



स्पष्टीकरण देना: npm uninstall xml2json फिर से चल रहा है npm install यह करना चाहिए - elimisteve
मैं सबसे लंबे समय से इस के साथ संघर्ष कर रहा था और पाया कि बस कर रहा है rm -fr node_modules && npm install ठीक कर दिया - Maruf
npm rebuild और हो गया - James Sumners


एनपीएम पुनर्निर्माण भी चाल करेगा

https://www.npmjs.org/doc/cli/npm-rebuild.html


34
2017-10-14 22:26





Platform: Linux

Node.js में भविष्य के संदर्भ के लिए v0.10.x(कम से कम v0.10.0) मुझे यह त्रुटि मिली:

Error: Module version mismatch. Expected 11, got 1.

इसे ठीक करने के लिए मैंने यह पाया दिलचस्प लिंक और इससे कुछ मदद भी मिली थी बेन नोर्डहुइज़िस। निम्न आदेश ने मुझे इस त्रुटि से छुटकारा पाने में मदद की:

npm update

18
2018-03-23 07:45



अद्यतन से पहले, आरएम-आरएफ node_modules - Jinbom Heo
npm update मेरे लिए चाल है। - wachr


यह आमतौर पर तब होता है जब आप नोड के एक संस्करण का उपयोग करके एक पैकेज स्थापित करते हैं, फिर एक अलग संस्करण में बदलें। ऐसा तब हो सकता है जब आप नोड को अपडेट करते हैं, या एनवीएम के साथ एक अलग संस्करण में स्विच करते हैं।

यह तब भी हो सकता है जब आप किसी वैश्विक रूप से स्थापित नोड के साथ रूट के रूप में प्रक्रिया को चलाने का प्रयास कर रहे हैं, लेकिन आप अपने स्वयं के उपयोगकर्ता खाते में एक एनवीएम-प्रबंधित नोड चला रहे हैं।

इसे ठीक करने के लिए, आप नोड के सही संस्करण का उपयोग कर संकुल को पुनः स्थापित कर सकते हैं। यह भी सुनिश्चित करें कि आप अलग-अलग उपयोगकर्ताओं में नोड के समान संस्करण का उपयोग कर रहे हैं।


11
2018-04-29 21:51





यह समस्या तब हुई है क्योंकि निम्न परिदृश्य: आप उदाहरण 5 संस्करण के लिए नोड का उपयोग कर रहे हैं। आप अपनी प्रोजेक्ट के अंदर कुछ पुस्तकालय जोड़ते हैं, इसे बनाते हैं और चलाते हैं। आपके सभी पुस्तकालयों को नोड संस्करण 5 के तहत संकलित किया जाएगा।

और फिर आप अपने नोड को उदाहरण के लिए संस्करण 6 पर अपग्रेड करें। और फिर आप कुछ कमांड चलाते हैं जो नोड का उपयोग करते हैं, उदाहरण के लिए npm run test। समस्या यहां है: आप पुराने नोड द्वारा संकलित पुस्तकालय चलाने के लिए नए नोड संस्करण का उपयोग करते हैं।

इसे हल करना 2 निम्नलिखित आदेशों से आसान है:

rm -rf node_modules // force remove node_modules directory
npm install         // install again all libraries. 

4
2017-10-17 19:41





यदि आप एनवीएम का उपयोग कर रहे हैं तो कोशिश करने के लिए एक और बात- सुनिश्चित करें कि आप वैश्विक स्तर पर नोड के साथ-साथ ऐप के समान संस्करण चला रहे हैं।

:/$ node -v
v6.0.0

:/var/www/app$ node -v
v6.2.0

अगर वे समझौते में नहीं हैं:

:/$ nvm use 6.2.0
Now using node v6.2.0 (npm v3.8.9)

(इसी से मेरा काम बना है।)


3
2018-06-11 01:15



यहां इस छोटे से जवाब ने मुझे मदद की, धन्यवाद। - Luca Fagioli


आप इस पृष्ठ पर नोड मॉड्यूल संस्करणों और उनके संबंधित नोड रिलीज की एक सूची पा सकते हैं https://nodejs.org/en/download/releases/

NODE_MODULE_VERSION Node.js के एबीआई (एप्लिकेशन बाइनरी इंटरफ़ेस) संस्करण संख्या को संदर्भित करता है, यह निर्धारित करने के लिए उपयोग किया जाता है कि Node.js संकलित C ++ ऐड-ऑन बाइनरी के कौन से संस्करणों को फिर से संकलित किए बिना लोड किया जा सकता है। इसे पहले के संस्करणों में हेक्स मान के रूप में संग्रहीत किया जाता था, लेकिन अब इसे पूर्णांक के रूप में दर्शाया जाता है।


2
2018-02-10 10:42





कभी-कभी समस्या नोडज संस्करण के कारण भी उत्पन्न होती है।

एनपीएम और नोडजेस संस्करण को अद्यतन करने का प्रयास करें। इसका पीछा करो संपर्क अपने नोडजेज़ को अपडेट करने के लिए।

और अपने एनपीएम उपयोग को अद्यतन करने के लिए:

sudo npm install npm -g

उम्मीद है की यह मदद करेगा!


1
2017-10-13 08:04





मेरे मामले में त्रुटि का कारण एक सी ++ था - AddOn जो एक अलग node.js संस्करण के खिलाफ संकलित किया गया था।

तो आपको अपने सी ++ - एडऑन को फिर से कंपाइल करना पड़ सकता है, इसलिए एडन और node.js के प्रमुख संस्करण आप मैच चलाते हैं।


0
2017-08-02 13:47



यह उत्तर क्या अतिरिक्त जानकारी प्रदान करता है? - Pogrindis
अभी तक कोई भी C ++ एड-ऑन का उल्लेख नहीं किया गया है। और उन्हें node.js. के बाहर संकलित करने की आवश्यकता है। आप जो भी कंपाइलर उपयोग करते हैं उसके साथ। - A.Franzen


मुझे systemd के साथ यह समस्या थी, लेकिन मैं ऐप का उपयोग कर चला सकता था node myapp.js

यह पता चला है कि पथ में ExecStart मैं से प्राप्त एक से अलग है which node। बदलकर सेवा फ़ाइल में यह मेरे लिए तय किया गया है।

स्रोत


0
2017-07-30 09:30





मेरे लिए कोई भी जवाब काम नहीं करता है, इसलिए मेरा समाधान यहां है। Error: Module version mismatch. Expected 48, got 51. at Error (native) at Object.Module._extensions..node (module.js:597:18) 48 और 51 नोड संस्करणों के अनुरूप हैं जो नोडजेज़ रिलीज पेज पर पाए जाते हैं: https://nodejs.org/en/download/releases/

तो मैंने एनवीएम, एक नोड संस्करण प्रबंधक स्थापित किया, और मेरे नोड संस्करण को 48 (6.11.x) पर स्विच किया और फिर भाग गया rm -rf node_modules/ तथा npm install

मेरा विशेष मॉड्यूल, मैक्रिप्ट, सी ++ बाइनरी पर निर्भर करता है, और नोड मॉड्यूल संस्करण का प्रत्यक्ष प्रभाव होता है:

NODE_MODULE_VERSION Node.js के एबीआई (एप्लिकेशन बाइनरी इंटरफ़ेस) संस्करण संख्या को संदर्भित करता है, यह निर्धारित करने के लिए उपयोग किया जाता है कि Node.js संकलित C ++ ऐड-ऑन बाइनरी के कौन से संस्करणों को फिर से संकलित किए बिना लोड किया जा सकता है। इसे पहले के संस्करणों में हेक्स मान के रूप में संग्रहीत किया जाता था, लेकिन अब इसे पूर्णांक के रूप में दर्शाया जाता है।


0
2017-10-17 20:26