node.js - instalar - npm express generator
npm no instalará Express? (8)
¿Has probado sudo npm -g install express?
Actualmente tengo node.js versión 0.8.8 y npm 1.1.59 instalados.
Cada vez que corro:
$ npm install -g express
Obtengo esto a cambio:
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
Me estoy tirando de los pelos en este momento tratando de resolver esto.
Actualizar:
corrí
$ npm -g ls
para ver lo que npm ha instalado globalmente:
/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
pero si corro:
$ npm ls
vuelve vacía?
Ejecute npm cache clean
e intente instalarlo de nuevo
En mi caso, en lugar de que el directorio ~ / .npm fuera propiedad de root, era ~ / tmp, que no pensé verificar hasta que uno de los mensajes de error finalmente me llevó a encontrarlo. El procedimiento para solucionarlo es bastante fácil, ya que es un directorio de tmp, podemos simplemente eliminarlo y comenzar de nuevo con uno que usted posea.
sudo rmdir ~/tmp
mkdir ~/tmp
Enfrenté el mismo problema.
Actualicé el paquete nodej yendo al sitio web de descarga del nodo js y luego no tuve este problema.
Gracias buena suerte
La solucion es:
1 - llama a su usuario la carpeta .npm:
sudo chown -R Webmaste /Users/webmaste/.npm/
2 - En su carpeta de prueba o su carpeta:
sudo npm install -g express@2.5.8
3 - Invocar expreso desde su ubicación real:
/usr/local/share/npm/bin/express
4 -
sudo cd . && npm install
5 - finalmente:
node app
el mensaje final en la consola debería verse así:
Express server listening on port 3000 in development mode
Si no puede ver nada malo con el uso de sudo npm install -g package_name
. Y tenga el problema de escribir una contraseña, siempre puede agregarse a archivos sudoers o al mismo grupo al que pertenece el ejecutable npm
.
Y así sumarse a sudoers para npm edit /etc/sudoers
añadiendo algo como esto al final del archivo:
your_username localhost=/usr/local/bin/npm
Here hay una guía paso a paso sobre cómo lograr eso si necesita más detalles.
Tengo el mismo problema. Este problema se debe a que el directorio .npm en su directorio de inicio se creó con privilegios de administrador.
utilizar :
$sudo npm install -g express
Tuve el mismo problema, y npm cache clear
no lo solucionó. Este problema se debe a que el directorio .npm
en su directorio de inicio se creó con privilegios de administrador. Probablemente el primer comando npm que ejecutó fue sudo npm -g
y ahora está tratando de npm install
en un directorio local.
Resolver:
-
sudo chown -R yourusername ~/.npm
- Esto puede no ser necesario, pero también tuve que
rmdir ~/tmp
npm install
from package.json debería funcionar después de esto.