2012-04-05 11 views
1

Ich habe versucht, Expressjs zu installieren.Express JS installieren

Ich erhalte diesen Fehler hier:

node.js:201 
     throw e; // process.nextTick error, or 'error' event on first tick 
      ^
Error: No such module 
    at Object.<anonymous> (/usr/share/npm/lib/utils/output.js:8:21) 
    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) 
    at require (module.js:368:17) 
    at Object.<anonymous> (/usr/share/npm/lib/utils/log.js:21:14) 
    at Module._compile (module.js:432:26) 
    at Object..js (module.js:450:10) 

eine Ahnung, warum dieser Fehler auftritt. Ich habe npm installiert, da scheint es kein Problem zu geben.

das ist der Befehl, den ich versuche, für die Installation von Express.js zu verwenden:

sudo npm install express -g 

I website als auch mit der Führung auf dem Express.js versucht. Sorry, mein Schlechter. dint installiert die neueste Version von nodejs

+0

Tritt dieser Fehler auf, wenn etwas anderes installiert wird? – drinchev

+0

Nein, es kam nicht beim Versuch, Steckdose zu installieren .. Weiß nicht über die anderen – user1306229

Antwort

0

Das passiert, wenn Sie eine neuere Version von Node.js und eine ältere Version von NPM haben. Es hört sich so an, als ob Sie Node.js gerade aktualisiert haben. Jetzt müssen Sie NPM aktualisieren.

+0

Aber alles funktioniert gut für mich. Überhaupt keine Probleme. Ich benutze die NPM Version 1.1.12 und Knoten Version 0.6.14. Gibt es etwas, das ich hier vermisse? – user1306229

0

Sie verwenden höchstwahrscheinlich eine alte NPM-Version.

Do

node --version 
npm --version 

Auch gibt es zwei Pakete in Ubuntu, die ähnlichen Namen haben, node und nodejs.

Fedora folgt auch einem ähnlichen Paket Namensschema. Aus diesem Grund die Binärdatei in Nodejs musste in Nodejs aus dem ursprünglichen Knoten umbenannt werden. Dies ist jedoch technisch nicht koscher: und die meisten Nodejs-Programme (und Bibliotheken, die mit npm installiert sind) nehmen an, dass der Knoten binary Node ist. Wenn Sie dies umgehen wollen, ist der einfachste Weg, nur die beiden zusammen symlink . Wenn Sie diese Route nehmen, installieren Sie nicht den Knoten Paket, das die Amateur Packet Radio-Sachen behandelt.

sudo ln -s /usr/bin/nodejs /usr/local/bin/node 

Alternativ kann im Fall von node, würde ich vorschlagen n und nicht mit Link installieren. Installieren Sie einfach npm (der Knoten wird installiert), dann entfernen Sie npm, dann sagen Sie Apt, es zu bereinigen. Um dies zu tun, führen Sie einfach

sudo apt-get install npm 
sudo npm install -g n 
sudo n latest 
sudo apt-get --purge remove npm 
sudo apt-get autoremove 

Es gibt andere binäre Distribution Manager, die auch von einem Shell-Skript wie nvm arbeiten, aber ich persönlich bevor n. Denken Sie an n wie eine für nur eine Sache: der Knoten binär, die es installiert ist /usr/local/bin.