Ich bin mit diesem Fehler festgefahren, egal in welchem Verzeichnis ich mich befinde 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 npm@2.14.12
3 info using node@v4.2.6
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 mehrmals versucht, nodejs zu deinstallieren / neu zu installieren. Ich habe sogar die Ordner npm und npm-cache in C: \ Users \ me \ AppData \ Roaming gelöscht. Ich bin mir nicht sicher, was schief gelaufen ist, um dies zu verursachen. Eine Sekunde hat es gut funktioniert, und jetzt kann ich diesen Fehler nicht mehr loswerden. Die Erklärung im Protokoll ist nicht sinnvoll, da dieser Fehler in jedem Verzeichnis angezeigt wird. Ich sollte beachten, dass das Ausführen einer Eingabeaufforderung als Administrator diesen Fehler nicht ausgibt. Ich ziehe mir an diesem Freitagabend die Haare aus, um das Problem zu beheben. Jede Hilfe wäre sehr dankbar!
Antworten:
Ich bin auf dasselbe Problem gestoßen, als ich einige npm-Einstellungen geändert habe. Ich habe mit einem
npm config set
Befehl einen Fehler gemacht und dabei eine Zeile hinzugefügt, die auf ein nicht vorhandenes Verzeichnis verweistC:\Users\{User}\.npmrc
. Nachdem ich diese Zeile manuell gelöscht hatte,.npmrc
war das Problem behoben.quelle
npm
Befehl hat nicht mehr vollständig funktioniert. Abgesehen von Ihrer Antwort hat keine Lösung funktioniert, danke!EISDIR steht für " Error, Is Directory ". Dies bedeutet, dass NPM versucht, etwas mit einer Datei zu tun, aber es ist ein Verzeichnis . In Ihrem Fall versucht NPM, eine Datei zu " lesen ", die ein Verzeichnis ist (Zeile: 4). Da die Operation nicht ausgeführt werden kann, wird der Fehler ausgelöst.
Drei Dinge, die Sie hier sicherstellen sollten.
quelle
Hatte heute das gleiche Problem, nachdem ich mein npm von Version 6.4.1 auf Version 6.5.0 aktualisiert habe. Ich habe dies behoben, indem ich das (für die meisten Benutzer empfohlene .pkg-Installationsprogramm) von node.js heruntergeladen und anschließend ausgeführt habe.
quelle
In meinem Fall wurde "EISDIR: Unzulässige Operation für ein Verzeichnis, gelesen" angezeigt, da ich in meiner Datei ".angular-cli.json" keinen vollständigen Pfad in "scripts:" angegeben habe.
Zum Beispiel hatte ich
Eigentlich hätte es so sein sollen
quelle
Ich hatte das gleiche Problem unter Mac OS X (installiert mit Homebrew), und .npmrc ist nicht der einzige Ort, an dem Knoten Konfigurationsvariablen gespeichert sind. In / usr / local / etc befindet sich eine glokale npmrc-Konfigurationsdatei, die Sie mit diesem Befehl bearbeiten müssen:
Entfernen Sie die
ca=
Zeile oder die Konfigurationseinstellung, die Ihre Installation unterbrochen hat, speichern Sie diese Datei und versuchen Sie es erneut mit npm. Sie sollten sehen, dass sie funktioniert.quelle
Diese seltsamen Fehler sind kürzlich auf meinem OSX-Computer aufgetreten.
Ich könnte mir schnell und schmutzig helfen, indem ich renne:
sudo chmod -R 777 /usr/local/lib/node_modules/
Etwas schien die Zugriffsrechte aller globalen Knotenmodule durcheinander gebracht zu haben.
quelle
Für mich war das Fixieren ein Schrägstrich nach dem Verzeichnisnamen
quelle
Eine vollständige Deinstallation, einschließlich Entfernen von Pfaden usw. und Neuinstallation, hat das Problem gelöst, allerdings ein sehr seltsames Problem.
So entfernen Sie node.js vollständig aus Windows
quelle
meteor
Projekts mit--react
hat dieses Problem verursacht, aber das Löschen und erneute Erstellen des Projekts hat funktioniert (OS X).Ich hatte dieses Problem mit Schlucken. Das Problem war, dass gulp meiner Quelldatei eine Abhängigkeit hinzugefügt hat und ich denke, npm hat versucht, sie zu öffnen:
Stellen Sie sicher, dass Ihre Datei package.json keine seltsamen Verweise enthält.
quelle
Stellen Sie sicher, dass Sie npm install aus dem richtigen Verzeichnis ausführen.
(Die Datei package.json kann beispielsweise ein zusätzliches Verzeichnis sein.)
quelle
Wenn Ihr Problem mit dem React Native-Packager zusammenhängt. Versuchen Sie, den Cache mit zurückzusetzen
react-native start --reset-cache
.quelle
In meinem Fall habe ich vergessen, den vollständigen Pfad einer der angeforderten Dateien zu übergeben. Nach dem Übergeben hat der vollständige Pfad der Datei funktioniert :)
quelle
In meinem Fall war mit Blick auf ich dieses Problem bei der Installation
create-react-app
inMAC (Mojave OS)
mit folgendem Befehl ein :und bekam Fehler wie diesen:
Ich habe npm.community gelesen , die versuchen, ohne zu installieren
sudo
:und es hat tatsächlich mein Problem gelöst .. !!
quelle
Stellen Sie sicher, dass node_modules (und Ihr root package.json) keinen Verweis auf das Modul "package.json" von npm enthalten. Das Löschen von package.json FOLDER aus node_modules hat das Problem für mich gelöst.
quelle
Ich hatte ein ähnliches Problem beim Einrichten des Boilerplate-Codes. Es wurde meine Datei bundle.js als Verzeichnis gelesen. Also wie hier angegeben. EISDIR bedeutet, dass es sich um ein Verzeichnis und nicht um eine Datei handelt. Um das Problem zu beheben, habe ich die Datei gelöscht und neu erstellt (sie wurde ursprünglich automatisch erstellt). Wenn Sie die Datei nicht finden können (weil sie versteckt ist), verwenden Sie einfach das Terminal, um sie zu finden und zu löschen.
quelle
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.
quelle
Ich hatte das gleiche Problem. In meinem Verzeichnis befand sich ein verknüpfter Ordner, der das Problem verursachte. Ich habe diesen Ordner hinzugefügt, um die Liste zu ignorieren, und dann hat er wie erwartet funktioniert.
quelle
Ich weiß, dass dies nicht speziell nach ewigen Fragen fragt. Aber Google hat mich hierher geführt. Für mich war es so einfach wie ein abschließender Schrägstrich.
Ich habe mich gerade geändert:
Zu:
Und der Fehler verschwand
quelle
Stellen Sie sicher, dass Sie Ihre Version von npm überprüfen und prüfen, ob Probleme damit vorliegen. Ich hatte zum Zeitpunkt dieses Beitrags das gleiche Problem und stellte fest, dass meine npm-Version (6.5) Probleme hatte. Ich musste npm Version 6.4.1 deinstallieren und neu installieren und dann fing alles wieder an, großartig zu funktionieren.
quelle
Ich hatte einen fehlerhaften Symlink zu node_modules in einem Unterordner
quelle
In meinem Fall haben diese Schritte mein Problem gelöst:
npm
Prozess beenden(CTRL + C)
npm
wiederquelle
In meinem Fall verwende ich Windows 10 auf Spanisch und diese Version mischt englische und spanische Verzeichnisnamen. Mein Problem war, dass das Desktop-Verzeichnis diesen Namen für einige Befehle und
escritorio
für andere hat. Ich glaube, dass npm dies nicht lösen kann. Meine Lösung bestand darin, einfach von C: \ in ein anderes Verzeichnis zu wechseln, das sich von meinem Ausgangsverzeichnis unterscheidet.quelle
Ich hatte ein ähnliches Problem. Ich setze cafile mit dem Befehl:
Ich konnte dies beheben, indem ich die Einstellungen für die Zertifikatdatei und die Einstellungen löschte
strict-ssl = false
.quelle
Ich habe dieses Problem behoben, indem ich mein Verzeichnis von meinem exFAT-Laufwerk verschoben habe, das kein Symlinking unterstützt.
Mein exFat-Laufwerk wird von osx und einer Bootcamp-Windows-Partition gemeinsam genutzt. Als ich versuchte, mein Projekt zu klonen und npm zu installieren, schlug dies fehl, erklärt jedoch nie, dass exFAT diese Funktionalität nicht unterstützt.
Es gibt Treiber, die Sie installieren können, um die Symlink-Funktion zu erweitern. Sie müssen jedoch einen Großteil Ihrer Einrichtung manuell vornehmen, anstatt ein einfaches npm-Skript auszuführen.
quelle
Für Mac OS: Bei direkter Installation von der NodeJS-Website befindet sich die npmrc-Datei in / usr / local / etc / npmrc . Löschen Sie einfach die undefinierte Konfiguration und dieses Problem wird behoben.
quelle
Ich habe gerade die Leitung entfernt
für laravel 5.6 mit vue.js. in webpack.mix.js
quelle
In meinem Fall wurden die
C:\Users\{user}\AppData\local\npm
Dateien ausgeblendet, sodass ich das Fehlerverzeichnis nicht finden und löschen konnte. Ich habe TAGE gebraucht, um das zu realisieren!Überprüfen Sie also alle Ordner, damit Sie sie nicht verpassen! Hier ist ein Link , um dies zu tun, wenn Sie nicht wissen, wie.
quelle