Estoy tratando de instalar globalmente un módulo npm que acabo de publicar. Cada vez que intento instalar, ya sea desde npm o desde la carpeta, aparece este error.
npm ERR! Error: ENOENT, chmod '/usr/local/lib/node_modules/takeapeek/lib/cmd.js'
npm ERR! If you need help, you may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR! System Linux 3.8.0-19-generic
npm ERR! command "node" "/usr/local/bin/npm" "install" "-g" "takeapeek"
npm ERR! cwd /home/giodamlio
npm ERR! node -v v0.10.6
npm ERR! npm -v 1.3.6
npm ERR! path /usr/local/lib/node_modules/takeapeek/lib/cmd.js
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /home/giodamlio/npm-debug.log
npm ERR! not ok code 0
Estoy usando sudo y he verificado tres veces todo en el paquete, todo debería funcionar. Hice un poco de búsqueda y vi un par de casos similiar ninguno de los cuales se han resuelto. Esto es lo que probé.
- Actualizar npm (
sudo npm install -g npm
) - Borrar el caché global npm (
sudo npm cache clear
) - Borrar el caché npm del usuario (
npm cache clear
)
Noté que el error tenía que ver con el archivo que estoy vinculando a la ruta, específicamente cuando npm intentó hacer un chmod. Eso no debería ser un problema, mi lib/cli.js
tiene permisos normales y npm tiene permisos de superusuario durante esta instalación.
Después de buscar en los documentos de npm, encontré una opción que evitaría que npm creara los enlaces bin ( --no-bin-links
), cuando probé la instalación con él, funcionó bien.
Entonces, ¿cuál es el trato? ¿Es este un extraño error marginal que aún no tiene solución?
Editar: para referencia, aquí está el módulo que cargué
--no-bin-links
sólo se detiene la NGP de enlaces simbólicos en los archivos de la package.jsonbin
hash para el camino de la instalación global.Respuestas:
Ok, parece que NPM está usando su
.gitignore
como base para el.npmignore
archivo, y por lo tanto ignora/lib
. Si agrega un.npmignore
archivo en blanco en la raíz de su aplicación, todo debería funcionar.[editar] - más información sobre este comportamiento aquí: https://docs.npmjs.com/misc/developers#keeping-files-out-of-your-package
fuente
Me encontré con un problema similar
resuelto.
fuente
npm cache verify
y funcionó. Gracias por la pista.npm install --cache /tmp/empty-cache
usar un caché temporal en lugar de eliminar el actual.Este problema surgió de alguna manera en Mac cuando intentaba ejecutar
npm install -g bower
. Me estaba dando una serie de errores por no poder encontrar cosas como graceful-fs. No estoy seguro de cómo instalé npm originalmente, pero parece que tal vez se vino abajo con el nodo usando homebrew. Primero corríEsto eliminó ambos
node
ynpm
de mi camino. A partir de ahí lo acabo de reinstalarCuando terminó, tenía
node
ynpm
en mi camino y pude correrEsto luego instaló la glorieta con éxito.
La actualización de las fórmulas de preparación y las instalaciones no parecían funcionar para mí, no estoy seguro de por qué. La eliminación de la
.npm
carpeta fue algo que funcionó para otras personas, y lo intenté sin éxito. Lo hice esta vez por si acaso. Tenga en cuenta también que ninguno de los siguientes me resolvió el problema, aunque sí lo hizo para otros:fuente
Recibí este error en la instalación de npm y agregar .npmignore no lo resolvió.
Intenté ir a la carpeta mencionada y no existía. El error se fijó cuando creé NPM carpeta en itinerancia carpeta.
Esto está en Windows 8.1
fuente
Tuve el mismo problema, y acabo de encontrar un manejo no mencionado aquí. Aunque contribuiría a la comunidad:
npm install -g myapp
no estaba copiando elbin
directorio. Descubrí que esto se debe a que no lo incluífiles
en mipackage.json
fuente
files
clave en mipackage.json
con algunas entradas comoindex.js
yLICENSE
, pero no labin
carpeta. Por lo tanto, funciona si no hay ningunafiles
clave, o si hay unafiles
clave Y labin
carpeta en.Estaba recibiendo un error similar
npm install
en una instalación local:No estoy seguro de qué estaba causando el error, pero recientemente instalé un par de nuevos módulos de nodo localmente, actualicé el nodo con homebrew y ejecuté 'npm update -g'.
La única forma en que pude resolver el problema fue eliminar el directorio local node_modules por completo y
npm install
volver a ejecutarlo :fuente
Tengo un problema similar específicamente: ERR! enoent ENOENT: no existe tal archivo o directorio, chmod 'node_modules / npm / node_modules / request / node_modules / http-signature / node_modules / sshpk / bin / sshpk-conv Probé todas las soluciones anteriores pero no tuve suerte. Estaba usando el cuadro vagabundo, y el proyecto estaba en una carpeta compartida. El problema parece estar solo allí, cuando muevo el proyecto a otra carpeta no compartida (con el host), ¡listo! problema resuelto. En caso de que otra persona estuviera usando también vagabundo
fuente
Recibí un mensaje de error similar al intentar
npm install
un montón de dependencias. Resulta que algunos de ellos no se instalan en Debian / Ubuntu porque esperan/usr/bin/node
ser el nodo ejecutable. Para arreglarlo, necesitas hacero mejor aún,
Para más información: https://stackoverflow.com/a/21171188/7581
fuente
Encontré un comportamiento similar después de actualizar a npm
6.1.0
. Parecía funcionar una vez, pero luego llegué a un estado con este error al intentar instalar un paquete que se especificó por ruta en el sistema de archivos:Lo siguiente no solucionó el problema :
rm -rf node_modules
npm cache clean
(dionpm ERR! As of npm@5, the npm cache self-heals
...use 'npm cache verify' instead.
)npm cache verify
rm -rf ~/.npm
Cómo solucioné el problema :
rm package-lock.json
fuente
Creo que su script de café compilado falta en el paquete npm publicado. Intenta escribir un comando de publicación previa .
fuente
takeapeek/lib/cmd.js
que no existe. Aunque la carpeta lib podría estar 'allí' cuando publique, no estará 'allí' cuando instale a través de npm a menos que sea parte del repositorio, o a menos que use prepublish para crearlo.En mi caso (código múltiple ENOENT errno 34) el problema era con el
~/.npm/
acceso al directorio. En su interior había algunos subdirectorios conroot:root
derechos, que causaban problemas mientras ejecutaba comandos como usuario normal (sinsudo
). Así que cambié la propiedad de todos los subdirectorios y archivos dentro del~/.npm/
directorio a mi grupo y usuario local. Eso funcionó en mi Ubuntu (en Mac también debería funcionar).Debes saber tu nombre de usuario, ¿verdad? Si no, entonces ejecute
$ whoami
y sustituya el nombre de su grupo también, de esta manera:EDITAR:
Caso de prueba :
Desde mi cuenta local
/home/johnb
instalé npm globalmente un generador parayeoman
, como este:Naturaleza del problema :
La acción anterior causó que algunas dependencias se instalaran dentro del
~/.npm/
directorio, teniendoroot:root
propiedad (debido asudo ...
). Evidentemente, npm no se ejecuta como usuario local (o el cambio de dependencias subdirece la propiedad después) al extraer dependencias y escribirlas en un subdirectorio de usuario local~/.npm/
. Mientras npm sea tan descuidado contra los problemas fundamentales de seguridad del sistema de archivos Unix, el problema volverá a ocurrir.Solución :
Compruebe continuamente si
~/.npm/
contiene subdirecciones con propiedad (y / o permisos) que no sean su cuenta de usuario local, especialmente cuando instala o actualiza algo consodo
(root). Si es así, cambie la propiedad interna~/.npm/
a un usuario local de forma recursiva.Pídale a la
npm, bower, grunt, ...
comunidad que aborden este problema como lo describí anteriormente.fuente
Recibí este error al intentar instalar un complemento de gruñido. descubrí que tenía una versión desactualizada de npm y el error desapareció después de actualizar npm a la última versión
fuente
Probé todas las cosas que encontré en la red (
npm cache clear
yrm -rf ~/.npm
), pero nada parece funcionar. Lo que resolvió el problema fue actualizar el nodo (y npm) a la última versión. Trata eso.fuente
En Windows tuve un error similar. Busque pegar Datos de la aplicación y busque la cadena
npm
.Reemplacé la cadena
'npm'
(incluidas las comillas) con'npm.cmd'
ambosatlasboard\lib\package-dependency-manager.js
yatlasboard\lib\cli\commands.js
. Eso solucionó el problema.fuente
El mismo error durante la instalación global (
npm install -g mymodule
) para el paquete con un script no existente.En package.json:
Pero el
./bin/module
no existía, como se llamabamodulejs
.fuente
fuente
Puede obtener este error si su node.js también está dañado de alguna manera. Solucioné este error desinstalando / reiniciando / instalando node.js completamente y solucionó este error, junto con los otros tres misteriosos errores que se producen.
fuente
Tenga cuidado con los valores no válidos para las claves "directorios" y "archivos" en package.json
Si comienza con una nueva aplicación y desea comenzar completamente en blanco, debe comenzar en una carpeta vacía completa o tener un archivo package.json válido.
Si no desea crear un archivo package.json primero, simplemente escriba:
npm i some_package
El paquete con el nombre "some_package" debe instalarse correctamente en una nueva subcarpeta "node_modules".
Si primero crea un archivo package.json, escriba:
npm init
Mantenga todos los valores predeterminados (simplemente haciendo clic en ENTRAR), debería terminar con un archivo válido.Debe tener un aspecto como este:
Tenga en cuenta que faltan las siguientes claves: " directorios ", " repositorio " y " archivos ". Parece que si usa valores incorrectos para " directorios " y / o " archivos ", no podrá instalar el paquete. Dejar estas llaves fuera, resolvió el problema para mí.
También tenga en cuenta la clave " principal ". Este está presente, pero contiene un valor no válido. No existe el archivo "index.js" (todavía). Puede quitarlo con seguridad.
Ahora escriba:
npm i some_package
y el paquete con el nombre "some_package" debe instalarse correctamente en una nueva subcarpeta "node_modules".fuente
Probé casi todo y finalmente esto:
Simplemente elimine node_modules y luego
'npm install'
vuelva a ejecutarfuente
Tuve un problema similar con una causa diferente: el
yo node
generador se había agregado"files": ["lib/"]
a mipackage.json
y porque micli.js
estaba fuera dellib/
directorio, se omitía al publicar en npm.(El problema de Yeoman en https://github.com/yeoman/generator-node/issues/63 debería solucionarse pronto).
fuente
Recibía el error "Error: ENOENT, stat 'C: \ Users \ userName \ AppData \ Roaming \ npm'. Pero no había tal directorio. Creé el directorio y la instalación de npm comenzó a funcionar
fuente
Recientemente actualicé al nodo 4.2.1 en una máquina con Windows 7 x64. Cuando se ejecuta
Tengo un error similar:
Pensando que estaba relacionado con la ruta de AppData, jugué con
y
para cambiar los campos prefijo, caché y tmp, pero recibió el mismo error con las nuevas rutas:
Todos los comandos se ejecutaron como administrador, por lo que tenía permisos completos.
Entonces pensé que había algunos problemas con los archivos existentes, así que corrí:
Pero tengo el mismo error. Sin embargo, todavía había algunos archivos temporales por ahí. Eliminar manualmente todos los datos temporales con cygwin finalmente solucionó el problema para mí:
Si solo tiene cmd de Windows, podría usar algo como
eliminar todos los subdirectorios (aunque si tiene dependencias de nodo profundamente anidadas, esto es notoriamente problemático)
Entonces, tal vez haya algunos problemas con la actualización de npm y tener versiones de Bower u otros paquetes dando vueltas. En mi caso ese parecía ser el problema
fuente
Al instalar iónico, obtuve el siguiente error
No se llamó
ansi
a ninguna carpeta en ese camino. Lo creé allí y lo instalé correctamente.fuente
Si trató de "hacer la instalación" en el directorio de su proyecto con este error, puede intentarlo:
entonces puedes intentar "hacer la instalación"
Si tiene el "npm ERR! Enoent ENOENT: no existe tal archivo o directorio, chmod '... / djam-backend / node_modules / js-beautify / js / bin / css-beautify.js'", entonces puede intentar instalar alguna versión anterior de js-beautify, más comentarios: https://github.com/beautify-web/js-beautify/issues/1247
y la ejecución "hacer instalar". Parece que funciona en caso de que no tenga otras dependencias que requieran una versión superior (1.7.0), en este caso debe degradar estos paquetes también en los paquetes.json.
o
fuente
Nada de lo anterior funcionó para mí. Pero
yarn install
funcionó, luegonpm i
comenzó a trabajar. No estoy seguro de qué hilo reparó, ¡pero es una solución rápida y fácil!fuente
Primero hacer
entonces hazlo
Después de eso, instale los archivos que desee agregar
fuente
Tuve un error similar con npm en un contenedor docker para webpack. El problema fue causado por el argumento de la línea de comando --user de la ejecución de Docker, porque el usuario y el grupo dados allí de alguna manera arruinaron los derechos en el volumen local. Espero que esto ayude a alguien :)
fuente
Me enfrentaba a un error similar, pero intenté ejecutar el comando create-react-app muchas veces y finalmente se creó, este fue el problema con mi conexión a Internet. Comprueba tu conexión a Internet
fuente
Por favor intente esto
Entonces prueba ese comando. Funcionará
fuente