it-swarm.com.de

NPM bleibt hängen und gibt den gleichen Fehler aus

Ich stecke mit diesem Fehler fest, egal in welchem ​​Verzeichnis ich bin und was ich nach "npm" in cmd.exe eingebe. Hier ist das npm-debug.log: 

0 info it worked if it ends with ok
1 verbose cli [ 'C:\\Program Files\\nodejs\\node.exe',
1 verbose cli   'C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js' ]
2 info using [email protected]
3 info using [email protected]
4 verbose stack Error: EISDIR: illegal operation on a directory, read
4 verbose stack     at Error (native)
5 verbose cwd C:\Users\me
6 error Windows_NT 6.1.7601
7 error argv "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\bin\\npm-cli.js"
8 error node v4.2.6
9 error npm  v2.14.12
10 error code EISDIR
11 error errno -4068
12 error syscall read
13 error eisdir EISDIR: illegal operation on a directory, read
13 error eisdir This is most likely not a problem with npm itself
13 error eisdir and is related to npm not being able to find a package.json in
13 error eisdir a package you are trying to install.
14 verbose exit [ -4068, true ]

Ich habe bereits mehrfach versucht, nodejs zu deinstallieren bzw. erneut zu installieren. Ich habe sogar die Ordner npm und npm-cache in C:\Users\me\AppData\Roaming gelöscht. Ich bin nicht sicher, was falsch gelaufen ist. Eine Sekunde hat es gut funktioniert, und jetzt kann ich diesen Fehler nicht mehr loswerden. Die Erklärung im Protokoll ist nicht sinnvoll, da in jedem Verzeichnis dieser Fehler angezeigt wird. Ich sollte beachten, dass die Ausführung einer Eingabeaufforderung als Administrator diesen Fehler nicht gibt. Ich ziehe an diesem Freitagabend meine Haare aus und versuche, das Problem zu beheben. Jede Hilfe wäre sehr dankbar!

44
AnotherMike

Ich hatte das gleiche Problem, als ich einige npm-Einstellungen änderte. Ich habe einen Fehler mit einem npm config set-Befehl gemacht, und dies fügte eine Zeile hinzu, die auf ein nicht vorhandenes Verzeichnis zu C:\Users\{User}\.npmrc verweist. Nachdem ich diese Zeile manuell aus .npmrc gelöscht habe, war das Problem behoben.

29
user1460043

EISDIRsteht für " Error, Is Directory ". Dies bedeutet, dass NPM versucht, etwas mit einer Datei zu tun, es ist jedoch ein -Verzeichnis. In Ihrem Fall versucht NPM, eine Datei zu "read", die ein Verzeichnis ist (Zeile: 4). Da die Operation nicht ausgeführt werden kann, wird der Fehler ausgegeben.

Drei Dinge, um hier sicher zu gehen. 

  1. Stellen Sie sicher, dass die Datei vorhanden ist. Wenn dies nicht der Fall ist, müssen Sie es erstellen. (Wenn der NPM von bestimmten Informationen in der Datei abhängt, müssen Sie diese Informationen dort haben).
  2. Stellen Sie sicher, dass es sich tatsächlich um eine Datei und nicht um ein Verzeichnis handelt.
  3. Es hat die richtigen Berechtigungen. Sie können die Datei mit "Sudo chmod 777 FILE_NAME" so ändern, dass sie alle Berechtigungen hat. (Achtung: Sie erteilen allen Benutzern dieser Datei Lese-, Schreib- und Ausführungsberechtigungen.)
96
MauricioLeal

Hatte heute dasselbe Problem, nachdem ich meine npm von Version 6.4.1 auf Version 6.5.0 aktualisiert habe. Ich habe dieses Problem behoben, indem ich das .pkg-Installationsprogramm (empfohlen für die meisten Benutzer) von node.js heruntergeladen und es anschließend ausgeführt habe.

8
PeeJee

Ich hatte das gleiche Problem unter Mac OS X (mit Homebrew installiert), und der .npmrc ist nicht der einzige Platzknoten, der Konfigurationsvariablen gespeichert hat. In/usr/local/etc gibt es eine glokale npmrc-Konfigurationsdatei, die Sie mit diesem Befehl bearbeiten müssen: 

Sudo nano npmrc

Entfernen Sie die ca=-Zeile oder was auch immer die Konfigurationseinstellung war, die Ihre Installation unterbrochen hat, speichern Sie die Datei, und versuchen Sie es erneut mit npm. Sie sollten sehen, dass es funktioniert.

5
rncrtr

In meinem Fall erhielt ich die "EISDIR: unzulässige Operation für ein Verzeichnis, gelesen", weil ich in meiner .angular-cli.json-Datei keinen vollständigen Pfad in "scripts:" angegeben habe.

Zum Beispiel hatte ich

"scripts": [
        "../node_modules/hammerjs",
        "../node_modules/moment"
      ],

Eigentlich hätte es sein sollen 

"scripts": [
        "../node_modules/hammerjs/hammer.min.js",
        "../node_modules/moment/min/moment.min.js"
      ],
4
Rob

Wenn Ihr Problem mit dem React Native-Packager zusammenhängt. Versuchen Sie, den Cache mit react-native start --reset-cache zurückzusetzen.

1
Friendly-Robot

Stellen Sie sicher, dass Sie npm install aus dem richtigen Verzeichnis ausführen.

(Die package.json-Datei kann beispielsweise ein zusätzliches Verzeichnis sein.) 

1
James Lawruk

Diese seltsamen Fehler sind kürzlich auf meinem OSX-Computer aufgetreten.

Ich konnte mir schnell und schmutzig helfen, indem ich lief:

Sudo chmod -R 777 /usr/local/lib/node_modules/

Etwas schien die Zugriffsrechte aller globalen Knotenmodule durcheinander gebracht zu haben.

1
datayeah

Für mich war das Fixieren ein Schrägstrich nach dem Verzeichnisnamen

0
Miniwe

Ich hatte einen fehlerhaften Symlink zu node_modules in einem Unterordner

0
Daniel Kukula

Stellen Sie sicher, dass Sie Ihre Version von npm überprüfen und prüfen, ob Probleme damit vorliegen. Zum Zeitpunkt dieses Beitrags hatte ich das gleiche Problem und stellte fest, dass meine npm-Version (6.5) Probleme hatte. Ich musste npm Version 6.4.1 deinstallieren und erneut installieren, und dann fing alles wieder gut an. 

0
smoosh911

In meinem Fall lösten diese Schritte mein Problem:

  1. npm Prozess (CTRL + C) beenden
  2. löschen des gesamten Ordners
  3. neues erstellen
  4. führen Sie npm erneut aus
0
BartusZak

Ich hatte ein ähnliches Problem beim Einrichten von Boilerplate-Code. Es wurde meine bundle.js-Datei als Verzeichnis gelesen. So wie hier gesagt. EISDIR bedeutet ein Verzeichnis und keine Datei. Um das Problem zu beheben, habe ich die Datei gelöscht und gerade neu erstellt (sie wurde ursprünglich automatisch erstellt) ... Wenn Sie die Datei nicht finden können (weil sie ausgeblendet ist), verwenden Sie das Terminal, um sie zu suchen und zu löschen. 

0
Pablo DelaCruz

Ich weiß, das ist nicht speziell nach js gefragt ... aber Google führt mich hierher .. Für mich war es so einfach wie ein Schlußstrich.

Ich habe gerade geändert:

forever start -a -l /dev/null/ /var/www/node/my_file.js

Zu:

forever start -a -l /dev/null /var/www/node/my_file.js

Und der Fehler verschwand

0
Marc Alexander

Ich hatte dieses Problem mit Schluck. Das Problem war, dass gulp meiner Quelldatei eine Abhängigkeit hinzugefügt hat und ich denke, dass npm versucht hat, sie zu öffnen:

{
  "name": "name",
  "version": "2.0.0",
  "description": "",
  "main": "gulpfile.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "appname": "file://gulp",
    "gulp-concat": "^2.6.1",
    "gulp-electron": "^0.1.3",
    "gulp-Shell": "^0.5.2",
    "gulp-uglify": "^2.0.0",
    "gulp-util": "^3.0.7",
    "node-7z": "^0.4.0"
  }
}

Stellen Sie sicher, dass sich in Ihrer package.json-Datei keine merkwürdigen Verweise befinden.

0
Lanklaas

In meinem Fall trat dieses Problem bei der Installation von create-react-app in MAC (Mojave OS) mit folgendem Befehl auf:

Sudo npm install create-react-app -g

und habe Fehler wie diesen:

npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/src/scheduler'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/src/symbol'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/src/testing'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/src/util'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/src/webSocket'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/symbol'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/testing'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/util'
npm WARN tar EISDIR: illegal operation on a directory, open '/usr/local/lib/node_modules/.staging/rxjs-a84420a7/webSocket'

Ich habe npm.community gelesen, die versucht, ohne Sudo zu installieren:

npm install create-react-app -g

und es hat tatsächlich mein Problem gelöst .. !!

0
Ritesh

Durch eine vollständige Deinstallation, einschließlich Entfernen von Pfaden usw. und Neuinstallation, wurde das Problem gelöst. Dies ist jedoch ein sehr seltsames Problem.

So entfernen Sie node.js vollständig von Windows

0
AnotherMike

Ich hatte das gleiche Problem. In meinem Verzeichnis befand sich ein verknüpfter Ordner, der das Problem verursacht hat. Ich habe diesen Ordner hinzugefügt, um die Liste zu ignorieren, und dann hat er wie erwartet funktioniert.

0
deyujjal

Hatte das gleiche Problem, bis ich versuchte, den .git-Ordner zu löschen. Es funktionierte. Ich denke, diese Art von Problem kann verschiedene Ursachen haben.

0

In meinem Fall habe ich vergessen, den vollständigen Pfad einer der angeforderten Dateien zu übergeben. Nach dem Übergeben des vollständigen Pfads der Datei hat es funktioniert :)

0
Rafael Paz