npm ne trouve pas package.json


153

J'essaie d'installer les dépendances d'un exemple: les npm express 2.5.8que j'ai téléchargés, mais toutes les applications génèrent la même erreur:

c:\node\stylus>npm install -d
npm info it worked if it ends with ok
npm info using npm@1.1.1
npm info using node@v0.6.11
npm ERR! Couldn't read dependencies.

npm ERR! Error: ENOENT, no such file or directory 'c:\node\stylus\package.json'
npm ERR! 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!
npm ERR! System Windows_NT 6.1.7600
npm ERR! command "C:\\Program Files (x86)\\nodejs\\\\node.exe" "C:\\Program File
s (x86)\\nodejs\\node_modules\\npm\\bin\\npm-cli.js" "install" "-d"
npm ERR! cwd c:\node\stylus
npm ERR! node -v v0.6.11
npm ERR! npm -v 1.1.1
npm ERR! path c:\node\stylus\package.json
npm ERR! code ENOENT
npm ERR! message ENOENT, no such file or directory 'c:\node\stylus\package.json'

npm ERR! errno {}
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR!     c:\node\stylus\npm-debug.log
npm not ok

Le blocage semble être:

aucun fichier ou répertoire de ce type 'c: \ node \ stylus \ package.json

Ai-je manqué une étape qui crée le package.json?

Je suis entrain de courir:

  • Windows 7 64 bits
  • npm 1.1.1
  • nœud 6.11
  • express 2.5.8

Comment avez-vous téléchargé les packages? Pouvez-vous les installer de la manière habituelle (c'est-à-dire avec npm install <package>?
Linus Thiel

Je n'ai pas essayé cela, car je ne sais pas exactement quels packages sont utilisés dans les applications. Comment puis-je le savoir pour essayer de les installer manuellement?
imjp

1
npm view <package>vous montrera le package.jsonavec les dépendances. Est aussi npm helpvotre ami.
Linus Thiel

J'ai extrait le fichier du package avec npm view packagemais j'obtiens cette erreur: i.imgur.com/AwGHu.gif . J'essaie de faire fonctionner certains d'entre eux: github.com/visionmedia/express/tree/2.x/examples
imjp

2
Hmmm ... <package>était un exemple. Essayez par exemple npm view stylus.
Linus Thiel

Réponses:


92

Mise à jour 2018

Cela devient une question assez populaire et ma réponse (bien que marquée comme correcte) n'est plus valable. Veuillez vous référer à la réponse de Deepali ci-dessous:

npm init

Réponse originale obsolète

Je pense que vous avez oublié de configurer le répertoire pour express:

express <yourdirectory>

Une fois que vous faites cela, vous devriez être en mesure de voir un tas de fichiers, vous devez alors exécuter la commande:

npm install -d

Cordialement.


2
et où est express si j'ai précédemment installé avec "npm install -g express"?
sports le

1
Vous devez exécuter "npm install -g express-generator" avec> Express 4.0.0. Source: stackoverflow.com/questions/23002448/express-command-not-found , après cela, la commande express peut être exécutée
Lucian Depold

La console UBUNTU a suggéré sudo apt install node-express-generator... Alors, quel est le meilleur apt install ou npm install?
Peter Krauss

157

Je pense, npm initva créer votre package.jsonfichier manquant . Cela fonctionne pour moi pour le même cas.


83

Je serai bref mais mortel. :) install -d ne fonctionnera pas pour vous. C'est simple. Essayer

$ npm install -g express

3
Cela a résolu le problème pour moi également, pouvez-vous expliquer ce que l'ajout expressde la commande npm install -gpeut avoir été la raison du changement soudain de succès? Merci!
Jake Smith

@ jake-smith J'ai mis à jour la réponse avec des références aux documents npm et quelques exemples et explications supplémentaires qui devraient aider à compléter la réponse originale.
Bryan 'BJ' Hoffpauir Jr.

Merci! J'ai appris pas mal de choses à ce sujet depuis, et je suis certes gêné par cette question. Lol.
Jake Smith

1
Eh bien, après un examen plus approfondi, il semble que ma modification n'a pas encore été évaluée par les pairs, donc mes ajouts ne sont pas visibles. @ Zoe-Marmara le voyez-vous dans votre propre file d'attente?
Bryan 'BJ' Hoffpauir Jr.

@ Bryan'BJ'Hoffpauir peut-être que vous devriez l'ajouter en commentaire ou en réponse. Votre modification a été rejetée. C'est tout un effort et je vous remercie beaucoup pour votre temps. :)
Zoe Marmara


16

Si Google "aucun fichier ou répertoire package.json" vous a envoyé ici, vous utilisez peut-être une très ancienne version de Node.js

La page suivante contient de bonnes instructions pour installer facilement la dernière version stable sur de nombreux systèmes d'exploitation et distributions:

https://github.com/joyent/node/wiki/Installing-Node.js-via-package-manager


Utilisait node --version0.10.31 et était d' avoir ce problème. Rétrogradé à 0.10.29 et il n'a toujours pas été résolu. Cela semble être un problème avec le programme d'installation de Windows car ils ont également cessé de créer le C:\Users\User\AppData\Roaming\npmdossier.
Shawn Solomon

8
J'ai eu l'erreur "pas de tel fichier ou répertoire package.json" en essayant d'exécuter 'npm install' sur le didacticiel Angular.js et je me suis retrouvé ici. Il n'était pas évident dans les instructions que vous deviez copier le code extrait du didacticiel - dans ce cas, le package.json se trouve dans le répertoire que vous avez cloné à partir de git à l'étape précédente ( docs.angularjs.org/tutorial )
Kevin Hooke

La solution de @ KevinHooke est la réponse à ce problème. L'exécution de npm -install à partir du répertoire d'applications clonées a résolu le problème.
Vikram

8

Utilisez la commande dans win7 / win8 / win10 (CD) pour déplacer des dossiers:

  1. Entrez votre dossier de projets

  2. Courir: npm install -d


5

Les débutants essaient généralement la commande npm à partir d'emplacements aléatoires. Après avoir téléchargé ou créé un projet, vous devez CD dans ce dossier de projet. À l'intérieur se trouve le fichier package.json.

cd <path_to_project>
npm install

3

essayez de réinstaller Node.js

curl -sL https://deb.nodesource.com/setup_4.x | sudo -E bash -

sudo apt-get install -y nodejs

sudo apt-get install -y build-essential

et mettre à jour npm

curl -L https://npmjs.com/install.sh | sudo sh

3

Node est livré avec npm installé, vous devriez donc avoir une version de npm. Cependant, npm est mis à jour plus fréquemment que Node, vous voudrez donc vous assurer qu'il s'agit de la dernière version.

sudo npm install npm -g

Tester:

npm -v //The version should be higher than 2.1.8

Après cela, vous devriez pouvoir exécuter:

npm install

2

J'ai eu un problème similaire avec npm. Le problème était que j'avais le projet dans deux dossiers du même nom. Je l'ai résolu en renommant l'un des dossiers en autre chose (dossier externe recommandé).


2

Cela dit en soi que ce package.jsonn'est pas disponible dans votre projet. Donc, pour créer package.json, utilisez les étapes suivantes:

  1. ouvrez l'invite de commande sur votre répertoire de projet
  2. npm init (il vous demandera d'entrer beaucoup d'entrées comme le nom, la version, la description, etc., entrez des valeurs aléatoires et cliquez sur Entrée).
  3. tapez yeset cliquez sur Entrée

Maintenant réessayez.


2
npm init -y 

utilisez cette commande, il créera automatiquement le fichier package.json avec toutes les informations de votre machine.


1

Mon problème était que je n'avais pas de fichier package.json pour une raison quelconque. Après avoir wget ce fichier dans mon répertoire, j'ai pu exécuter npm install

https://raw.githubusercontent.com/twbs/bootstrap/master/package.json


2
Je sais que c'est vieux, mais je dois encore dire - cela pourrait supprimer l'erreur spécifique, mais ce n'est pas la bonne façon de traiter ce problème. Vous extrayez le package.json pour Bootstrap, un projet complètement différent du vôtre.
Sam Hanley

1

Je vous remercie! J'ai également essayé de nombreuses options pour cela. J'utilise également Windows.Cette commande m'a aidé et m'a fait gagner du temps:

npm install -g npm@lts

1

Cela peut être très évident,
mais essayez de lancer CMD(pour Windows) à partir du dossier du projet , où se trouve votre fichier package.json .

Ne lancez pas à CMDpartir du système ou de la "barre de recherche" dans Win ou
déplacez-vous vers le dossier de votre projet à l'aide de la cdcommande, puis lancez-le npm start.


1

ok, essayez d'aller à l'accueil "user @ user: ~ $" (cd + enter key), et npm install -g votre your_module.


1

Allez dans le dossier du projet et vérifiez si le fichier package.json existe.

Si vous créez le projet à l'aide du projet Visual Studio Angular, assurez-vous d'exécuter cette commande dans le dossier ClientApp. il y a de fortes chances que vous recherchiez le fichier project.json en dehors du dossier ClientApp.


Cela m'est juste arrivé. Je voulais répondre mais comme vous l'avez déjà fait, acceptez mon vote pour: p
Aimal Khan

1

si le fichier package.json dans le répertoire du projet est manquant, vous pouvez le créer par npm init .

si le fichier package.json est déjà créé dans le répertoire du projet, il est possible que vous n'exécutiez pas votre projet à partir du bon chemin. Utilisez cdyour-project-path dans le terminal, puis exécutez votre projet à partir de là.


0

Pour la commande suivante

sudo npm install react browserify watchify babelify --save-dev

J'ai la même erreur

saveError ENOENT: aucun fichier ou répertoire de ce type, ouvrez '/Users/Path/package.json'

Mais quand je lance la commande

sudo npm install -gd react browserify watchify babelify --save-dev

puis aucun fichier ou message de répertoire manquant n'est apparu.


0

J'ai couru npm install -ypour sauter l'étape de question pour créer le fichier manquant package.json, cela ysignifie que oui



0

installez simplement le paquet que vous voulez avec -g

npm install -g express


0

Veuillez vérifier le répertoire ou le dossier dans lequel vous installez votre nouveau package. Cela m'est arrivé aussi, tout mon projet était dans un sous-répertoire et j'essayais de l'installer dans le répertoire principal. Après avoir tout vérifié, j'ai découvert que je devais installer dans le sous-répertoire où se trouvent mes fichiers de projet et les fichiers package.json et c'est fait. J'espère que cela t'aides...


-1

Générez package.json sans lui poser de questions. J'ai lancé le commentaire ci-dessous sous Mac et Windows sous le répertoire que je voudrais créer package.json et cela fonctionne

$ npm init -y

Wrote to C:\workspace\package.json:

{
  "name": "workspace",
  "version": "1.0.0",
  "description": "",
  "main": "builder.js",
  "dependencies": {
    "jasmine-spec-reporter": "^4.2.1",
    "selenium-webdriver": "^4.0.0-alpha.5"
  },
  "devDependencies": {},
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

-2

L'ajout de -g avant le nom du package a fonctionné pour moi. Vous recherchez de la documentation pour expliquer pourquoi cela fonctionne.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.