Ich versuche, node-vlc mit nw.js (v0.12.0-alpha2) zu verwenden. Wenn ich meine App ohne nw.js starte, funktioniert sie, aber wenn ich sie mit nw.js starte, wird eine Fehlermeldung angezeigt:
Nicht erfasster Fehler: Modul hat sich nicht selbst registriert. ", Quelle: /home/alexis/Bureau/dev/jukebox/node_modules/vlc/node_modules/ffi/node_modules/bindings/bindings.js (84)
Ich habe einige Befehle mit nw-gyp ausprobiert, aber es konnte mir nicht helfen. Ich bin auf Ubuntu 14, 64-Bit.
javascript
node.js
node-webkit
node-ffi
Alexis Schad
quelle
quelle
Antworten:
Wenn Sie den Knoten aktualisiert haben, kann dies
npm rebuild
möglicherweise für Sie behoben werdenquelle
rm -r node_modules
dannnpm install
den Job gemachtFür mich:
rm -r node_modules
dannnpm install
quelle
Ich hatte ein ähnliches Problem mit einem anderen Produkt und mein Fix bestand darin, die Version des von mir verwendeten Knotens zu ändern. Ich benutzte
0.12.0
und wechselte zurück zu0.10.26
.Persönlich verwende ich NVM , um die Änderung der Knotenversion zu handhaben. Mit installiertem NVM ist es so einfach wie das Ausführen
Oder setzen Sie die Standardversion auf 0.10.26
Hoffentlich hilft Ihnen das weiter - unsere Probleme kamen von verschiedenen Produkten, aber die Lösung kann dieselbe sein.
quelle
Ich hatte ein ähnliches Problem.
In meinem Fall habe ich ein C / C ++ - Add-On ausgeführt und vergessen, das Add-On zu exportieren. In meiner main.cc fehlte der folgende Code:
Hoffe das hilft anderen! Vielen Dank :)
quelle
Ich hatte einmal dieses Problem beim Erstellen eines C ++ - Addons mit mehreren Dateien. In meiner Binding.gyp-Datei hatte ich:
Und mein Projekt enthielt mehrere * .cc-Dateien. Das Makro NODE_MODULE () wurde jedoch nur für eine Datei aufgerufen, die den Rest der Dateien importierte. Der Knoten erwartet jedoch, dass er für die in den Quellen aufgeführte Datei frist * .cc aufgerufen wird . Also musste ich die Quellen ändern, um diese Datei explizit am Anfang hinzuzufügen
quelle
Laufen hat
npm update
bei mir funktioniertquelle
npm rebuild
oderrm -rf node_modules && npm i
ist die richtige Antwort.Ich hatte das gleiche Problem mit 0.12 und io.js 1.3.0. Durch Zurücksetzen auf Node.js 0.10 wurde das Problem behoben.
quelle
Ich habe das gleiche Problem hinzugefügt, weil ich als sudo auf Modulen installiert habe ... Durch Entfernen des Ordners für Knotenmodule und erneutes Installieren als normaler Benutzer wurde das Problem behoben.
quelle
Für mich
npm rebuild
odernpm update
hat nicht funktioniert. Ich musste dennode_modules
Ordner entfernen und ausführennpm install
, um sie erneut zu installieren.quelle
Ich hatte das gleiche Problem. Mein Skript, das auf ein globales Referenzskript verweist, hat eine ungültige Referenz. Ich habe diese ungültige Referenz entfernt und der Fehler war verschwunden. Meine Fehlermeldung enthielt keinen Hinweis auf diese bestimmte ungültige Referenz, was das Debuggen erschwerte. Aber 'Ungefangener Fehler: Modul hat sich nicht selbst registriert' war die Nachricht, die ich erhielt.
Dies passiert auch in meinem anderen Projekt. Aus irgendeinem Grund wird der Referenzpfad nicht erkannt, wenn eines der Zeichen in Großbuchstaben geschrieben ist. Selbst wenn man bedenkt, dass das obere Gehäuse die korrekte Schreibweise des Pfades war.
quelle
Ich war auch mit dem gleichen Problem konfrontiert und dieses hat für mich funktioniert.
Sie müssen in das node_module / gehen und das nw-gyp-Ziel mit dem folgenden Befehl konfigurieren
dann
und das hat bei mir funktioniert. Wenn der Befehl nw-gyp nicht gefunden wird, verwenden Sie
quelle