web-dev-qa-db-fra.com

NPM "ENOENT: pas d'erreur de fichier ou de répertoire de ce type" lors de l'installation des dépendances Sails.js avec le nœud 8.9.4 LTS

J'ai récemment mis à niveau mon ordinateur et avec lui, vers la dernière version LTS de Node et NPM:

  • Node.js 8.9.4
  • NPM 5.6.0

J'ai une application Sails.js 0.12.14 pour laquelle j'essaie d'installer des dépendances NPM avec npm install, mais lorsque je le fais, j'obtiens les erreurs suivantes:

➜  web-service git:(feature/auth) ✗ npm install
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/pako-660dbb41/package.json'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/pako-660dbb41/README.md'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/pako-660dbb41/LICENSE'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/pako-660dbb41/index.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/pako-660dbb41/CHANGELOG.md'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/camelCase.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/uniqueId.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/bindKey.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/unnest.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/bindAll.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/unset.js'
// a bunch of similar Lodash errors removed from here
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/T.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/zipWith.js'
WARN tar ENOENT: no such file or directory, open '/Users/Nag/Code/project/web-service/node_modules/.staging/lodash-6e6c9f2a/fp/lastIndexOfFrom.js'
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/oauth-sign):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/Users/Nag/Code/project/web-service/node_modules/.staging/oauth-sign-b13c86db'
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/mkdirp):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/Users/Nag/Code/project/web-service/node_modules/.staging/mkdirp-c94c8047'
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: [email protected] (node_modules/mkdirp/node_modules/minimist):
npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: Cannot cd into '/Users/Nag/Code/project/web-service/node_modules/.staging/minimist-ba966a6e'

npm ERR! path /Users/Nag/Code/project/web-service/node_modules/.staging/sails-02afd14e/node_modules/@sailshq/body-parser
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename '/Users/Nag/Code/project/web-service/node_modules/.staging/sails-02afd14e/node_modules/@sailshq/body-parser' -> '/Users/Nag/Code/project/web-service/node_modules/.staging/@sailshq/body-parser-6d1e8405'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/Nag/.npm/_logs/2018-01-22T14_40_13_889Z-debug.log

Je n'arrive pas à comprendre ce qui se passe et à trouver des réponses adéquates ailleurs en ligne. J'ai même couru npm cache clean --force, rm -rf node_modules et réessayé avec des erreurs similaires. Cela semblait bien fonctionner lorsque j'étais sur le nœud ~ 6, mais après la mise à niveau vers le nœud 8.9.4 et NPM 5.6.0, cela n'installe pas mes dépendances. Comment puis-je résoudre ça?

9
Nag

Essayez de supprimer le fichier package-lock.json

25
tantalum

Pas de permission, pas de problème internet, c'est juste un problème général de npm. J'ai résolu le problème avec fil .

yarn install
3
coturiv

Je me débattais avec cela pendant un certain temps, et cela semble être lié au suivant.

Disons que vous avez 3 modules, A, B et C

Le module A inclut directement B et C. Le module B comprend également le module C, dans ses dépendances package.json.

Si vos dépendances package.json dans le module A se présentent comme suit:

"dependencies": {
     "C": "^1.0.0",
     "B": "^1.1.0"
}

Vous obtiendrez l'erreur ci-dessus que vous avez mentionnée, ENOENT, bla, bla dans.

Si, par contre, vous incluez le module avec l'imbrication, incluez d'abord comme:

"dependencies": {
     "B": "^1.1.0",
     "C": "^1.0.0"
}

L'erreur disparaît. Cela ressemble à un bogue dans npm avec des dépendances imbriquées, et les messages d'erreur et les journaux n'étaient pas très descriptifs. Vérifiez votre arbre de dépendance et voyez si vous avez le cas décrit. Si c'est le cas, c'est votre problème.

1
Severun

supprimez simplement le fichier package-lock.json puis installez le paquet que vous voulez que tout fonctionne :-)

0
Neha Sharma