Ответ 1
Если вы обновили node, то npm rebuild
может исправить это для вас
Я пытаюсь использовать node -vlc с nw.js(v0.12.0-alpha2). Когда я запускаю свое приложение без nw.js, он работает, но когда я запускаю его с помощью nw.js, я получил сообщение об ошибке:
Неисправность Ошибка: модуль не зарегистрировался самостоятельно. ", источник:/home/alexis/Bureau/dev/jukebox/ node_modules/vlc/node_modules/ffi/node_modules/bindings/bindings.js( 84)
Я пробовал некоторые команды с nw-gyp, но это не могло мне помочь. Я на Ubuntu 14, 64-бит.
Если вы обновили node, то npm rebuild
может исправить это для вас
Для меня:
rm -r node_modules
затем
npm install
У меня была аналогичная проблема с другим продуктом, и я решил изменить версию node, которую я использовал. Я использовал 0.12.0
и снова вернулся к 0.10.26
.
Лично я использую NVM для обработки версии node. С помощью NVM это было просто, как запуск
nvm use 0.10.26
Или установите для версии по умолчанию 0.10.26
nvm alias default 0.10.26
Надеюсь, это поможет вам - наши проблемы исходили из разных продуктов, но решение может быть одинаковым.
У меня была аналогичная проблема.
/Users/пользователь/NodeAddons/мост/node_modules/bindings/bindings.js:83 Ошибка: модуль не зарегистрировался самостоятельно.
В моем случае я делал надстройку C/С++, и я забыл экспортировать надстройку, в моем main.cc отсутствовал код ниже:
void Init(v8::Handle<v8::Object> exports) {
NODE_SET_METHOD(exports, "method", method);
}
NODE_MODULE(method, Init);
Надеюсь, это поможет другим! Спасибо:)
Для меня работает npm update
У меня была эта же проблема с 0.12 и io.js 1.3.0, возвращаясь к Node.js 0.10, исправил проблему.
Я добавлю ту же проблему, потому что я установил в модули как sudo... Извлечение папки модулей node и переустановка в качестве обычного пользователя исправлена.
Для меня npm rebuild
или npm update
не работает. Мне пришлось удалить папку node_modules
и запустить npm install
, чтобы установить их снова.
Mac:
Для меня ниже действия работают: node v0.12.2
npm rebuild
rm -rf node_modules
npm i
i тоже столкнулась с той же проблемой, и эта работа для меня работала.
вам нужно зайти в node_module/и настроить nw-gyp target, выполнив команду
$ nw-gyp configure --target=0.12.3
то
$ nw-gyp build
и это сработало для меня. Если команда nw-gyp не найдена, используйте
npm install nw-gyp
У меня когда-то была эта проблема при создании многодоменного аддона С++. В моем файле binding.gyp у меня было:
"sources": ["src/*.cc", "src/*.h" ]
И мой проект содержал несколько файлов *.cc. Однако макрос NODE_MODULE() вызывался только в одном файле, который импортировал остальные файлы. Но node ожидает, что он вызывается в файле frist *.cc, указанном в источниках. Поэтому мне пришлось изменить источники, чтобы явно добавить этот файл в начало