Platform: Linux
При запуске моей программы Node.js я получил следующую ошибкуНесоответствие версии модуля. Ожидаемый 11, получил 1
Error: Module version mismatch. Expected 11, got 1.
Platform: Linux
При запуске моей программы Node.js я получил следующую ошибкуНесоответствие версии модуля. Ожидаемый 11, получил 1
Error: Module version mismatch. Expected 11, got 1.
вы могли бы дать ошибку, как это:
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)
, а затем, вы можете заметить ошибку в модуле или где-нибудь.
Это потому, что вы обновили свой узел, вы можете перестроить модуль, указанный выше.
i revole my question by переустановите (уберите, затем установите) xml2json.
удачи!
Чтобы уточнить: 'npm uninstall xml2json', за которым следует снова запускать' npm install', следует это сделать. – elimisteve
Я боролся с этим в течение самого долгого времени и обнаружил, что просто делать 'rm -fr node_modules && npm install' исправил его – Maruf
' npm rebuild' и сделал –
Platform: Linux
Для дальнейшего использования в node.js v0.10.x
(по крайней мере v0.10.0) Я получил это ошибка:
Error: Module version mismatch. Expected 11, got 1.
Чтобы исправить это я нашел, что это interesting link, а также имел некоторую помощь от Ben Noordhuis. Следующая команда помогла мне избавиться от этой ошибки:
npm update
до обновления, rm -rf node_modules –
'npm update' сделал трюк для меня. – wachr
Это обычно происходит при установке пакета с использованием одной версии узла, а затем в другую версию. Это может произойти при обновлении узла или переключении на другую версию с помощью nvm.
Это также может произойти, если вы пытаетесь запустить процесс с правами администратора с глобально установленным узлом, но вы используете узел, управляемый nvm, в своей учетной записи пользователя.
Чтобы исправить это, вы можете просто переустановить пакеты, используя правильную версию узла. Также убедитесь, что вы используете ту же версию узла для разных пользователей.
НПМ перестраивать также сделать трюк
Вы можете найти список версий модулей узла и соответствующего их освобождения узла на этой странице https://nodejs.org/en/download/releases/
NODE_MODULE_VERSION refers to the ABI (application binary interface) version number of Node.js, used to determine which versions of Node.js compiled C++ add-on binaries can be loaded in to without needing to be re-compiled. It used to be stored as hex value in earlier versions, but is now represented as an integer.
Еще одна вещь, чтобы попытаться если вы используете nvm- убедитесь, что вы используете ту же версию узла как в глобальном масштабе, так и в приложении. (. Это то, что работает для меня):
:/$ 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)
Этот маленький ответ здесь помог мне, спасибо. –
В моем случае причина ошибки была C++ - аддон, который был скомпилирован против другой версии node.js.
Возможно, вам придется перекомпилировать свой C++-AddOn, поэтому основные версии addon и node.js вы запускаете совпадение.
Дополнительная информация дает этот ответ? – Pogrindis
Пока никто не добавил дополнения C++. И они должны быть скомпилированы вне node.js. С любым компилятором, который вы используете. –
Эта проблема возникает из-за того, что в следующем сценарии вы используете Node, например, версию 5. Вы добавляете некоторые библиотеки в свой проект, создаете и запускаете это. Все ваши библиотеки будут скомпилированы под узлом версии 5.
И затем вы обновляете свой узел, например, до версии 6. И затем вы запускаете некоторые команды, которые используют узел, например npm run test
. Проблема здесь: вы используете новую версию узла для запуска библиотек, скомпилированных более старым узлом.
Решая это легко с помощью 2-х следующих команд:
rm -rf node_modules // force remove node_modules directory
npm install // install again all libraries.
Я имел эту проблему с Systemd, но я мог бы запустить приложение с помощью node myapp.js
.
Оказалось, что путь в ExecStart
отличается от того, который я получил от which node
. Изменение этого в файле службы исправило это для меня.
Иногда проблема возникает из-за nodejs версии тоже.
Попробуйте обновить версию npm и nodejs. Следуйте за этим link, чтобы обновить ваши узлы.
и обновить использование НОГО:
sudo npm install npm -g
Надеется, что это помогает!
Ни один из ответов не работал для меня, так что вот мое решение. Error: Module version mismatch. Expected 48, got 51. at Error (native) at Object.Module._extensions..node (module.js:597:18)
48 и 51 соответствуют узлу версии, как найти на странице nodejs выпуска: https://nodejs.org/en/download/releases/
Так я установил NVM, версия менеджера узла, и переключил свой вариант узла 48 (6.11.x), а затем побежал rm -rf node_modules/
и npm install
Мой конкретный модуль, Mcrypt, зависит от C++ исполняемых файлов, а также узел Версия модуля имеет прямое влияние:
NODE_MODULE_VERSION refers to the ABI (application binary interface) version number of Node.js, used to determine which versions of Node.js compiled C++ add-on binaries can be loaded in to without needing to be re-compiled. It used to be stored as hex value in earlier versions, but is now represented as an integer.
Самый простой способ добраться туда, где вы должны быть, после того, как вы изменили свою версию узла является:
rm -Rf node_modules/ && yarn && yarn start
Заменить yarn start
с тем, что команда является то, что вам нужно запустить сервер.
Не уникален для Linux. То же самое происходит на OSX. 'rm -rf node_modules; npm update' будет исправлено. – Meekohi
убедитесь, что '' 'node -v''' является ожидаемым, а затем' '' rm -rf node_modules; npm install''' – obotezat