npm kann package.json nicht finden

153

Ich versuche, die Abhängigkeiten eines Beispiels zu installieren: npm's express 2.5.8, die ich heruntergeladen habe, aber alle Apps werfen den gleichen Fehler aus:

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

Die Blockade scheint zu sein:

Keine solche Datei oder kein solches Verzeichnis 'c: \ node \ stylus \ package.json

Habe ich einen Schritt verpasst, der das schafft package.json?

Ich renne:

  • Windows 7 64 Bit
  • npm 1.1.1
  • Knoten 6.11
  • Express 2.5.8
imjp
quelle
Wie haben Sie die Pakete heruntergeladen? Können Sie sie auf die übliche Weise installieren (dh mit npm install <package>?
Linus Thiel
Ich habe das nicht versucht, weil ich nicht genau weiß, welche Pakete in den Apps verwendet werden. Wie kann ich das herausfinden, um sie manuell zu installieren?
Imjp
1
npm view <package>zeigt Ihnen die package.jsonzusammen mit den Abhängigkeiten. Auch npm helpist dein Freund.
Linus Thiel
Ich habe die Paketdatei mit ausgecheckt, erhaltenpm view package jedoch die folgende Fehlermeldung: i.imgur.com/AwGHu.gif . Ich versuche, einige davon zum
Laufen
2
Hmmm ... <package>war als Beispiel gedacht. Versuchen Sie zB npm view stylus.
Linus Thiel

Antworten:

92

Update 2018

Dies wird eine sehr beliebte Frage und meine Antwort (obwohl als richtig markiert) ist nicht mehr gültig. Bitte beziehen Sie sich auf Deepalis Antwort unten:

npm init

Ursprüngliche veraltete Antwort

Ich denke, Sie haben vergessen, das Verzeichnis für Express einzurichten:

express <yourdirectory>

Sobald Sie dies tun, sollten Sie in der Lage sein, eine Reihe von Dateien zu sehen, und Sie sollten den folgenden Befehl ausführen:

npm install -d

Grüße.

Aldo
quelle
2
und wo ist express wenn ich vorher mit "npm install -g express" installiert habe?
Sport
1
Sie müssen "npm install -g express-generator" mit> Express 4.0.0 ausführen. Quelle: stackoverflow.com/questions/23002448/express-command-not-found , danach kann der Express-Befehl ausgeführt werden
Lucian Depold
UBUNTU-Konsole vorgeschlagen sudo apt install node-express-generator... Also, was ist das Beste apt install oder npm install?
Peter Krauss
157

Ich denke, npm initwird Ihre fehlende package.jsonDatei erstellen . Es funktioniert bei mir für den gleichen Fall.

Deepali Agarwal
quelle
83

Ich werde kurz, aber tödlich sein. :) install -d funktioniert bei dir nicht. Es ist einfach. Versuchen

$ npm install -g express
Zoe Marmara
quelle
3
Dies hat es auch für mich behoben. Können Sie erklären, was das Hinzufügen des expressBefehls npm install -gzum Grund für die plötzliche Änderung des Erfolgs gewesen sein kann? Vielen Dank!
Jake Smith
@ jake-smith Ich habe die Antwort mit Verweisen auf die npm-Dokumente und einigen zusätzlichen Beispielen und Erklärungen aktualisiert, die helfen sollen, die ursprüngliche Antwort zu ergänzen.
Bryan 'BJ' Hoffpauir Jr.
Vielen Dank! Ich habe seitdem einiges darüber gelernt, und diese Frage ist mir zugegebenermaßen peinlich. Lol.
Jake Smith
1
Nun, nach weiterer Überprüfung sieht es so aus, als ob meine Bearbeitung noch nicht von Experten begutachtet wurde, sodass meine Ergänzungen nicht sichtbar sind. @ Zoe-Marmara siehst du es in deiner eigenen Warteschlange?
Bryan 'BJ' Hoffpauir Jr.
@ Bryan'BJ'Hoffpauir Vielleicht solltest du es als Kommentar oder Antwort hinzufügen. Ihre Bearbeitung wurde abgelehnt. Das ist allerdings eine ziemliche Anstrengung und ich danke Ihnen vielmals für Ihre Zeit. :)
Zoe Marmara
16

Wenn googeln "keine solche Datei oder Verzeichnis package.json" Sie hierher geschickt hat, verwenden Sie möglicherweise eine sehr alte Version von Node.js.

Auf der folgenden Seite finden Sie gute Anweisungen zur einfachen Installation des neuesten Stables auf vielen Betriebssystemen und Distributionen:

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

Gerry
quelle
Verwendete node --version0.10.31 und hatte dieses Problem. Auf 0.10.29 herabgestuft und es wurde immer noch nicht behoben. Es scheint ein Problem mit dem Windows-Installationsprogramm zu sein, da der C:\Users\User\AppData\Roaming\npmOrdner ebenfalls nicht mehr erstellt wurde .
Shawn Solomon
8
Ich habe den Fehler "Keine solche Datei oder kein solches Verzeichnis package.json" beim Versuch, 'npm install' im Angular.js-Tutorial auszuführen, erhalten und bin hier gelandet. In den Anweisungen war nicht ersichtlich, dass Sie in den ausgecheckten Code für das Lernprogramm cd müssen - in diesem Fall befindet sich die Datei package.json in dem Verzeichnis, das Sie im vorherigen Schritt von git geklont haben ( docs.angularjs.org/tutorial ).
Kevin Hooke
@ KevinHookes Lösung ist die Antwort auf dieses Problem. Das Ausführen von npm -install aus dem geklonten Anwendungsverzeichnis löste das Problem.
Vikram
8

Verwenden Sie den Befehl in win7 / win8 / win10 (CD) zum Verschieben von Ordnern:

  1. Geben Sie Ihren Projektordner ein

  2. Lauf: npm install -d

Franklin CI
quelle
5

Anfänger versuchen normalerweise den Befehl npm von zufälligen Orten aus. Nach dem Herunterladen oder Erstellen eines Projekts müssen Sie eine CD in diesen Projektordner legen. Darin befindet sich die Datei package.json.

cd <path_to_project>
npm install
Victor1125
quelle
3

Versuchen Sie, Node.js erneut zu installieren

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

und aktualisiere npm

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

Auf Node ist npm installiert, daher sollten Sie eine Version von npm haben. Npm wird jedoch häufiger aktualisiert als Node. Sie sollten daher sicherstellen, dass es sich um die neueste Version handelt.

sudo npm install npm -g

Prüfung:

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

Danach sollten Sie in der Lage sein:

npm install
Cosimo de 'Medici
quelle
2

Ich hatte ein ähnliches Problem mit npm. Das Problem war, dass ich das Projekt in zwei gleichnamigen Ordnern hatte. Ich habe es behoben, indem ich einen der Ordner in einen anderen umbenannt habe (äußerer Ordner empfohlen).

Yipeekiyay
quelle
2

Es heißt, dass package.jsondies in Ihrem Projekt nicht verfügbar ist. Führen Sie zum Erstellen package.jsondie folgenden Schritte aus:

  1. Öffnen Sie die Eingabeaufforderung in Ihrem Projektverzeichnis
  2. npm init (Sie werden aufgefordert, viele Einträge wie Name, Version, Abstieg usw. einzugeben, einige zufällige Werte einzugeben und auf die Eingabetaste zu klicken.)
  3. Geben Sie ein yesund klicken Sie auf die Eingabetaste

Versuchen Sie es jetzt erneut.

DEVENDRAN RAJA
quelle
2
npm init -y 

Wenn Sie diesen Befehl verwenden, wird automatisch die Datei package.json mit all Ihren Computerinformationen erstellt.

Sagansha San
quelle
1

Mein Problem war, dass ich aus irgendeinem Grund keine package.json-Datei hatte. Nachdem ich diese Datei in mein Verzeichnis aufgenommen hatte, konnte ich npm install ausführen

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

PolarisUser
quelle
2
Ich weiß, dass dies alt ist, aber ich muss noch sagen - dies könnte den spezifischen Fehler unterdrücken, aber dies ist nicht der richtige Weg, um dieses Problem zu lösen. Sie ziehen die package.json für Bootstrap herunter, ein völlig anderes Projekt als Sie.
Sam Hanley
1

Danke dir! Ich habe auch viele Optionen dafür ausprobiert. Ich benutze auch Windows. Dieser Befehl hat mir geholfen und meine Zeit gespart:

npm install -g npm@lts
Bhattraideb
quelle
1

Es mag sehr offensichtlich sein,
aber versuchen Sie CMD(für Windows) aus dem Projektordner zu starten , in dem sich Ihre package.json befindet Datei befindet.

Starten Sie nicht CMDvom System oder von der "Suchleiste" in Win oder
verschieben Sie sich mit Hilfe eines cdBefehls in Ihren Projektordner und starten Sie dann npm start.

rock_walker
quelle
1

OK, versuchen Sie, zur Startseite "user @ user: ~ $" (CD + Eingabetaste) zu gehen und npm install -g your your_module zu installieren.

sergioAJ
quelle
1

Gehen Sie in den Projektordner und überprüfen Sie, ob die Datei package.json vorhanden ist.

Wenn Sie das Projekt mit dem Visual Studio Angular-Projekt erstellen, stellen Sie sicher, dass Sie diesen Befehl im ClientApp-Ordner ausführen. Es besteht eine gute Chance, dass Sie nach der Datei project.json außerhalb des ClientApp-Ordners suchen.

Arunagirirajah Nirooshan
quelle
Das ist mir gerade passiert. Ich wollte antworten, aber da Sie bereits haben, akzeptieren Sie meine Gegenstimme: p
Aimal Khan
1

Wenn die Datei package.json im Projektverzeichnis fehlt, können Sie sie mit npm init erstellen .

Wenn die Datei package.json bereits im Projektverzeichnis erstellt wurde, besteht die Möglichkeit, dass Sie Ihr Projekt nicht über den richtigen Pfad ausführen. Verwenden Sie cdyour-project-path im Terminal und führen Sie dann Ihr Projekt von dort aus.

Zernab Hussain
quelle
0

Für den folgenden Befehl

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

Ich habe den gleichen Fehler bekommen

saveError ENOENT: Keine solche Datei oder kein solches Verzeichnis. Öffnen Sie '/Users/Path/package.json'.

Aber wenn ich den Befehl ausführe

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

dann erschien keine fehlende Datei- oder Verzeichnismeldung.

Zeeawan
quelle
0

Ich habe ausgeführt npm install -y, um den Fragenschritt zum Erstellen der fehlenden Datei zu überspringen package.json, ybedeutet ja

Java Basketball
quelle
0

Ich hatte auch das gleiche Problem bei der Installation von Typoskript. Ich habe gerade eine package.josn-Datei mit dem folgenden Befehl initialisiert

npm init -y

Und dann habe ich mein Typoskript installiert

npm install -g -typescript

http://blossomprogramming.blogspot.com/

Gagandeep Singh
quelle
0

Installieren Sie einfach ein beliebiges Paket -g

npm install -g express

prosper1
quelle
0

Bitte überprüfen Sie das Verzeichnis oder den Ordner, in dem Sie Ihr neues Paket installieren. Dies ist mir auch passiert. Mein gesamtes Projekt befand sich in einem Unterverzeichnis und ich habe versucht, es im Hauptverzeichnis zu installieren. Nachdem ich das Ganze überprüft hatte, stellte ich fest, dass ich in dem Unterverzeichnis installieren musste, in dem sich meine Projektdateien und package.json-Dateien befinden, und fertig. Hoffe das hilft...

Jagadish Meghval
quelle
-1

Generieren Sie package.json, ohne dass Fragen gestellt werden. Ich habe den folgenden Kommentar in Mac und Windows unter dem Verzeichnis ausgeführt, in dem ich package.json erstellen möchte, und es funktioniert

$ 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"
}
ecamur
quelle
-2

Das Hinzufügen von -g vor dem Paketnamen hat bei mir funktioniert. Suchen Sie nach Dokumentation, um zu erklären, warum dies funktioniert.

Corey Byrum
quelle