C:\Users\Nick\Desktop\turntablefm\Bots\Super Bot>node bot.js
node.js:201
throw e; // process.nextTick error, or 'error' event on first tick
^
Error: Cannot find module 'mongoose'
at Function._resolveFilename (module.js:334:11)
at Function._load (module.js:279:25)
at Module.require (module.js:357:17)
at require (module.js:368:17)
at Object.<anonymous> (C:\Users\Nick\Desktop\turntablefm\Bots\Super Bot\db.j
s:1:78)
at Module._compile (module.js:432:26)
at Object..js (module.js:450:10)
at Module.load (module.js:351:31)
at Function._load (module.js:310:12)
at Module.require (module.js:357:17)
Ich habe es bereits mit npm install installiert und habe eine Neuinstallation versucht, aber das hat nichts gebracht?
installation mit folgendem Befehl versuchen:
npm install mongoose
verwenden Sie nicht den Schalter -g.
BTW: Ich habe die Eingabeaufforderung im Admin-Modus ausgeführt.
http://prazjain.wordpress.com/2012/04/24/node-js-error-error-cannot-find-module-xyz/
Sie können zwei Dinge tun, um es zum Laufen zu bringen:
1) Mungo global installieren mit folgenden Schritten: -
ein)npm install mongoose -g
b) Wechseln Sie in Ihr App-Verzeichnis, in dem sich bot.js befindet, und führen Sie es aus
npm link mongoose
Erläuterung: - Wenn Sie ein Paket global über npm installieren, wird es in den globalen Ordner node_module heruntergeladen. Für mich (Mac-Benutzer) steht es unter /usr/local/lib/node_modules/mongoose . Wir verknüpfen dies mit dem Verzeichnis, in dem Sie module.js ausführen möchten.
2) Ein anderer Ansatz ist, Mungo lokal und nicht global zu installieren via
npm install mongoose
Nachdem Sie eine dieser Anweisungen befolgt haben, sehen Sie den Ordner node_modules -> mongoose im Verzeichnis 'bot.js'. Dies bedeutet, dass mongoose erfolgreich installiert wurde.
Führen Sie nun den Knoten bot.js aus, es wird funktionieren.
Installieren Sie mit der Option --save
:
npm install mongoose --save
Dies fügt moose zu package.json
hinzu, mit dem Heroku Ihre App erstellt.
Sie müssen die Befehlszeile aufrufen
npm install mongoose
denken Sie daran, diesen Befehl vom Stammpfad Ihres Projekts aus aufzurufen
npm install mongoose
es wird funktionieren und wenn alles in Ordnung ist, werden Sie in Ihrem Terminal folgen
[email protected] node_modules/mongoose
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected]
├── [email protected] ([email protected], [email protected], [email protected])
└── [email protected] ([email protected], [email protected], [email protected])
Ich habe das gleiche Problem in meinem Mac und habe im Spotlight gesucht und festgestellt, dass Mungo in/usr/local/node_modules installiert ist (als ich 'npm install mongoose' ausgeführt habe). Das Verschieben des Moose-Ordners nach ~ (home) node_modules, wo npm tatsächlich installiert wird, hat mein Problem behoben.
Wenn Sie mongoose bereits global installiert haben (npm install -g mongoose), dann tun Sie dies
% npm link mongoose
im Projektverzeichnis. Das hat bei mir funktioniert.
npm install erstellt "node_modules" im pwd (aktuelles Arbeitsverzeichnis)
wenn Ihre Anwendung wächst, wächst die Anzahl der erforderlichen Module, und der bessere Ansatz besteht darin, package.json (Referenz: https://stackoverflow.com/a/14226133/832147 ) zu verwalten und dann nur "npm install" auszugeben "statt jedes zu installieren.
Als Erweiterung bei der Bereitstellung Ihrer App auf Plattformen wie Heroku können Sie Ihr riesiges Verzeichnis node_modules Ihres Projekts ignorieren (git ignore). Heroku installiert Ihre abhängigen Module durch Lesen Ihrer package.json
dieser Ansatz führt dazu, dass wir die gleichen erforderlichen Knotenmodule für jedes unserer knotenbasierten Projekte erstellen. Dies ist jedoch in Ordnung, da wir den Befehl "npm install" nur einmal pro Projekt ausgeben müssen
gibt es in dem Verzeichnis, in dem bot.js untergebracht ist, ein node_modules-Ordner, in dem sich ein moose-Ordner befindet? Läuft Ihr Mongodb-Server?
Sie können es auch testen, indem Sie sich im Stammverzeichnis des Projekts befinden, den Knoten aufrufen (keine Argumente, um die REPL zu öffnen) und versuchen, dort einen Moose zu fordern.
Öffnen Sie einfach Ihren Projektordner in der Befehlszeile und führen Sie den folgenden Befehl aus, damit die Abhängigkeit von Mongoose in der package.json-Datei hinzugefügt wird. Ich bin zu 100% sicher, dass Sie diesen Fehler nicht noch einmal erhalten.
$ Sudo npm install --save Mungo
an Fenstern, wenn Sie es tun
npm install mongoose
es wird standardmäßig auf Ihrem Laufwerk C:\installiert
und wenn Sie versuchen, einige * .js-Dateien von D:\Laufwerk auszuführen
es wird Ihnen die gleiche Fehlermeldung geben.
ich denke, das Installationsverzeichnis und die * .js-Datei sollten das gleiche Stammverzeichnis haben.
Aus dem doc/blog
Im Allgemeinen lautet die Faustregel:
Wenn Sie etwas installieren, das Sie in Ihrem Programm verwenden möchten, using requir ("was auch immer") und installieren Sie es lokal im Stammverzeichnis von dein Projekt.
Wenn Sie etwas installieren, das Sie in .__ verwenden möchten Installieren Sie die Shell in der Befehlszeile oder in etwas anderem global, also dass seine Binärdateien in Ihrer PATH-Umgebungsvariablen enden.
Sie verwenden ein Windows-Betriebssystem, das von Moose nicht unterstützt wird. Aus dieser Fehlermeldung geht hervor:
C:\>npm install mongoose
npm http GET https://registry.npmjs.org/mongoose/2.5.10
npm http 304 https://registry.npmjs.org/mongoose/2.5.10
npm http GET https://registry.npmjs.org/hooks/0.2.0
npm http GET https://registry.npmjs.org/mongodb/0.9.9-4
npm http 304 https://registry.npmjs.org/mongodb/0.9.9-4
npm http 304 https://registry.npmjs.org/hooks/0.2.0
npm WARN package.json [email protected] No README.md file found!
npm ERR! notsup Unsupported
npm ERR! notsup Not compatible with your operating system or architecture: mongo
[email protected]
npm ERR! notsup Valid OS: linux,darwin,freebsd
npm ERR! notsup Valid Arch: any
npm ERR! notsup Actual OS: win32
npm ERR! notsup Actual Arch: x64
npm ERR! System Windows_NT 6.1.7601
npm ERR! command "C:\\Program Files\\nodejs\\\\node.exe" "C:\\Program Files\\nod
ejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "mongoose"
npm ERR! cwd C:\
npm ERR! node -v v0.8.18
npm ERR! npm -v 1.2.2
npm ERR! code EBADPLATFORM
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! C:\npm-debug.log
npm ERR! not ok code 0