Я пытаюсь использовать 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, но мне это не помогло. Я использую 64-разрядную версию Ubuntu 14.
javascript
node.js
node-webkit
node-ffi
Алексис Шад
источник
источник
Ответы:
Если вы обновили узел,
npm rebuild
возможно, это исправят за васисточник
rm -r node_modules
потомnpm install
сделал работуДля меня:
rm -r node_modules
тогдаnpm install
источник
У меня была аналогичная проблема с другим продуктом, и я решил изменить версию узла, который я использовал. Я использовал
0.12.0
и снова вернулся на0.10.26
.Лично я использую NVM для обработки изменения версии узла. С установленным NVM это так же просто, как запустить
nvm use 0.10.26
Или установите версию по умолчанию на 0.10.26
nvm alias default 0.10.26
Надеюсь, это поможет вам - наши проблемы возникли из-за разных продуктов, но решение может быть одинаковым.
источник
У меня была аналогичная проблема.
В моем случае я делал надстройку C / C ++, и я забыл экспортировать надстройку, в моем main.cc отсутствовал код ниже:
void Init(v8::Handle<v8::Object> exports) { NODE_SET_METHOD(exports, "method", method); } NODE_MODULE(method, Init);
Надеюсь, это поможет другим! Благодарность :)
источник
Однажды у меня была эта проблема при создании многофайлового аддона C ++. В моем файле binding.gyp у меня было:
"sources": ["src/*.cc", "src/*.h" ]
А в моем проекте было несколько файлов * .cc. Однако макрос NODE_MODULE () был вызван только для одного файла, который импортировал остальные файлы. Но узел ожидает, что он будет вызван из первого файла * .cc, указанного в источниках. Поэтому мне пришлось изменить источники, чтобы явно добавить этот файл в начало.
источник
Для меня бег
npm update
работалисточник
npm rebuild
илиrm -rf node_modules && npm i
это правильный ответ.У меня была такая же проблема с 0.12 и io.js 1.3.0, возврат к Node.js 0.10 устранил проблему.
источник
Я добавил ту же проблему, потому что я установил модули как sudo ... Удаление папки модулей узлов и переустановка как обычный пользователь исправили ее.
источник
У меня
npm rebuild
илиnpm update
не получилось. Пришлось удалитьnode_modules
папку и запуститьnpm install
для их повторной установки.источник
У меня такая же проблема. В моем сценарии, который ссылался на сценарий глобальной ссылки, была недопустимая ссылка. Я удалил эту недействительную ссылку, и ошибка исчезла. В моем сообщении об ошибке не было указаний на эту конкретную недопустимую ссылку, что затрудняло отладку. Но я получал сообщение «Неперехваченная ошибка: модуль не саморегистрировался».
То же самое произошло и в другом моем проекте. По какой-то причине он не распознает путь ссылки, если один из символов является прописным. Даже подумав, верхний регистр был правильным написанием пути.
источник
Я тоже столкнулся с той же проблемой, и этот сработал для меня.
вам нужно войти в node_module / и настроить цель nw-gyp с помощью следующей команды
$ nw-gyp configure --target=0.12.3
тогда
и это сработало для меня. Если вы получили команду nw-gyp not found, используйте
источник