47 votes

mnp ne sera pas installé express?

J'ai actuellement node.js la version 0.8.8, et npm 1.1.59 installé.

Chaque fois que j'exécute:

$ npm install -g express

Je reçois ce en retour:

npm ERR! Error: EACCES, open '/Users/devinandrews/.npm/64a534c1-express.lock'
npm ERR!  { [Error: EACCES, open '/Users/devinandrews/.npm/64a534c1-express.lock']
npm ERR!   errno: 3,
npm ERR!   code: 'EACCES',
npm ERR!   path: '/Users/devinandrews/.npm/64a534c1-express.lock' }
npm ERR! 
npm ERR! Please try running this command again as root/Administrator.

npm ERR! System Darwin 12.1.0
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "express"
npm ERR! cwd /Users/devinandrews
npm ERR! node -v v0.8.8
npm ERR! npm -v 1.1.59
npm ERR! path /Users/devinandrews/.npm/64a534c1-express.lock
npm ERR! code EACCES
npm ERR! errno 3
npm ERR! stack Error: EACCES, open '/Users/devinandrews/.npm/64a534c1-express.lock'
npm ERR! 
npm ERR! Additional logging details can be found in:
npm ERR!     /Users/devinandrews/npm-debug.log
npm ERR! not ok code 0

Je suis en tirant mes cheveux maintenant essayer de comprendre cela.

Mise à jour:

J'ai couru

$ npm -g ls

pour voir mon ce mnp a installé dans le monde entier:

/usr/local/lib
├─┬ express@3.0.0rc4
│ ├── commander@0.6.1
│ ├─┬ connect@2.4.4
│ │ ├── bytes@0.1.0
│ │ ├── formidable@1.0.11
│ │ ├── pause@0.0.1
│ │ └── qs@0.4.2
│ ├── cookie@0.0.4
│ ├── crc@0.2.0
│ ├── debug@0.7.0
│ ├── fresh@0.1.0
│ ├── methods@0.0.1
│ ├── mkdirp@0.3.3
│ ├── range-parser@0.0.4
│ └─┬ send@0.0.4
│   └── mime@1.2.6
└─┬ npm@1.1.59
  ├── abbrev@1.0.3
  ├── ansi@0.1.2
  ├── archy@0.0.2
  ├── block-stream@0.0.6
  ├── chownr@0.0.1
  ├── couch-login@0.1.10
  ├── fstream@0.1.18
  ├─┬ fstream-npm@0.1.1
  │ └── fstream-ignore@0.0.5
  ├── glob@3.1.12
  ├── graceful-fs@1.1.10
  ├── inherits@1.0.0
  ├── ini@1.0.4
  ├─┬ init-package-json@0.0.5
  │ └── promzard@0.2.0
  ├── lockfile@0.2.1
  ├── lru-cache@2.0.1
  ├── minimatch@0.2.6
  ├── mkdirp@0.3.4
  ├── node-gyp@0.6.7
  ├── nopt@2.0.0
  ├── npm-registry-client@0.2.6
  ├─┬ npmconf@0.0.11
  │ └─┬ config-chain@1.1.1
  │   └── proto-list@1.2.2
  ├── npmlog@0.0.2
  ├── once@1.1.1
  ├── osenv@0.0.3
  ├─┬ read@1.0.4
  │ └── mute-stream@0.0.3
  ├── read-installed@0.0.2
  ├── read-package-json@0.1.4
  ├── request@2.9.203
  ├── retry@0.6.0
  ├── rimraf@2.0.2
  ├── semver@1.0.14
  ├── slide@1.1.3
  ├── tar@0.1.13
  ├── uid-number@0.0.3
  └── which@1.0.5

mais si je lance:

$ npm ls

elle retourne vide?

145voto

ty. Points 3671

J'ai eu le même problème, et npm cache clear n'a pas le fixer. Ce problème est dû au fait que l' .npm dans votre répertoire a été créé avec les privilèges de root. Probablement le premier mnp commande exécutée a été sudo npm -g et maintenant vous essayez d' npm install dans un répertoire local.

À résoudre:

  • sudo chown -R yourusername ~/.npm
  • Cela peut ne pas être nécessaire, mais j'ai également eu rmdir ~/tmp

npm install de colis.json devrait fonctionner après cette.

6voto

supernova Points 1744

exécutez npm cache clean et essayez de l'installer à nouveau

6voto

user1640025 Points 51

j'ai eu le même problème , Ce problème est dû au fait que l' .mnp dans votre répertoire a été créé avec les privilèges de root.

utilisation :

$sudo npm install -g express

0voto

galo hernandez Points 11

La solution est:

1 - chown pour votre utilisateur .npm dossier :

sudo chown -R Webmaste /Users/webmaste/.npm/

2 - Lors de votre dossier de test ou de votre dossier:

sudo npm install -g express@2.5.8

3 - Appeler express à partir de votre emplacement actuel:

/usr/local/share/npm/bin/express

4 -

sudo cd . && npm install

5 - enfin:

node app

le dernier message dans la console devrait ressembler à ceci:

Express server listening on port 3000 in development mode

0voto

Michael Smith Points 125

Avez-vous essayé sudo npm-g installer express?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X