2015-11-20 1 views
1

В OSX мне нужно использовать macports, потому что у меня возникают проблемы с Brew. Я удалил доморощенный менеджер пакетов и попытался получить узел на работу:Несоответствие версии модуля Node.js, установленное с помощью MacPorts

Я чистая установкой nodejs и НОГО

sudo port install nodejs npm 

Давайте просто показать, что не только НПМ установлено, и никаких других модулей.

$ ls /opt/local/lib/node_modules/ 
npm 

Попытка получить пакет узел работает, тестирование с appdmg

sudo npm install -g appdmg 

Теперь вот загадочная ошибка. (ПРИМЕЧАНИЕ: Он работал с версией brew «s НПМ, ранее этим утром)

$ appdmg 
module.js:460 
    return process.dlopen(module, path._makeLong(filename)); 
       ^

Error: Module version mismatch. Expected 46, got 47. 
    at Error (native) 
    at Object.Module._extensions..node (module.js:460:18) 
    at Module.load (module.js:356:32) 
    at Function.Module._load (module.js:311:12) 
    at Module.require (module.js:366:17) 
    at require (module.js:385:17) 
    at Object.<anonymous> (/usr/local/lib/node_modules/appdmg/node_modules/macos-alias/lib/create.js:7:13) 
    at Module._compile (module.js:435:26) 
    at Object.Module._extensions..js (module.js:442:10) 
    at Module.load (module.js:356:32) 

ответ

0

Я использую 10.8.4 Mountain Lion. Я пытался с последней версией узла (5.1), а также более старой версией (4.2) и получил Inverse результатов ..

На 5.1, сообщение гласит:

Error: Module version mismatch. Expected 47, got 46. 

На 4.2.2 я получил

Error: Module version mismatch. Expected 46, got 47. 

Это привело меня к мысли, что была какая-то затяжная версия узла. Таким образом (после установки узла на главном сайте с помощью установки Упаковщик, узел OSX, не уверен, если это имеет значение), я запустил эту деинсталлировать сценарий, и он установил ее, благодаря @nicerobot через https://gist.github.com/nicerobot/2697848:

curl -ksO https://gist.githubusercontent.com/nicerobot/2697848/raw/uninstall-node.sh 
chmod +x ./uninstall-node.sh 
./uninstall-node.sh 
rm uninstall-node.sh 
0
npm uninstall lodash 
npm install 

I «Пробовал много способов, но в моем случае он не устанавливал модули узла правильно, поэтому я удалил, а затем снова установил его, и он работает! Надеюсь, поможет.