Wenn ich ausführe, npm install
erhalte ich diesen Fehler
npm ERR! Fehler: EPERM: Vorgang nicht zulässig, benennen Sie C: \ projects ****** \ node_modules \ react-async-script '->' C: \ projects ******* \ node_modules.react-async-script um .LÖSCHEN'
- Ich führe das cmd als Administrator aus
- Ich bin
npm cache clean
vorher gelaufen - Ich habe dafür gesorgt, dass alle anderen Anwendungen nichts mit
node_modules
Öffnen zu tun haben
Antworten:
In meiner Situation hat das geholfen. Bevor Sie mit der Ausführung dieser Befehle fortfahren, schließen Sie alle VS-Code-Instanzen.
Cache mit leeren
Installieren Sie die neueste Version von npm weltweit als Administrator:
Cache mit leeren
Versuchen Sie erneut, Ihre Komponente zu installieren.
Ich hoffe, dies behebt Ihr Problem. Wenn nicht, können Sie Ihr Antivirenprogramm vorübergehend deaktivieren und es erneut versuchen.
quelle
npm run watch
. Danach wurden in meinem Fall die richtigen Modulverknüpfungen in einer neuen app.js-Datei aktualisiert.Ich habe es zum Laufen gebracht, als versucht wurde, npm mit einer Force-Option zu installieren, um Remote-Ressourcen abzurufen, selbst wenn eine lokale Kopie auf der Festplatte vorhanden ist. Versuche zu rennen
Aktualisiert Für einige meiner Kollegen funktionierte diese Lösung nicht. Aber wir haben versucht, Garn anstelle von npm zu verwenden. Es funktioniert (auch schneller) ohne Probleme
quelle
Nicht
package.json
, aber aus irgendeinem Grund war ichnode_modules/
schreibgeschützt. Das Zurücksetzen hat dies behoben.quelle
1.
Closing VS,2.
Löschennode_modules
von File Explorer3.
Neustart meines PC4.
Laufenpm install --force
. Dann hat es endlich geklappt.Wenn Sie die
--force
Option vermeiden möchten (was immer ein besserer Ansatz ist) , sollten Sie sicherstellen, dass Sie das Projekt nicht mehr ausführen, da dies normalerweise der Hauptgrund für das Sperren der Dateien in fast 90% der Fälle ist, die ich gesehen habeIch schlage die folgenden Schritte in dieser Reihenfolge vor:
1- Beim Angular-Stopp
ng s
und beim React-Stopp wirdnpm start
dieses Problem normalerweise behoben, da dieser Fehler normalerweise auftritt, wenn ein Entwicklungsserver das Projekt ausführt, da er einige Dateien sperrt und npm sie dann nicht aktualisieren kann, wodurch dieser Fehler ausgelöst wird2- Wenn das oben genannte nicht funktioniert, schließen Sie den Code-Editor, in dem der Arbeitsbereich geöffnet ist (möglicherweise wurden einige Dateien oder ähnliches gesperrt).
Versuchen Sie also, den Code-Editor zu schließen und auszuführen:
3- Wenn es immer noch nicht funktioniert, können Sie die
--force
Option ausprobierenquelle
Ich habe den gleichen Fehler erhalten und laut https://github.com/Medium/phantomjs/issues/19 könnte er durch Ihre Antivirensoftware verursacht werden. Ich habe meine für die Dauer der Installation deaktiviert und "npm install" auf cmd als admin ausgeführt und es hat funktioniert. Hoffe das hilft.
quelle
Für mich habe ich gerade den Code-Editor (VS Code) geschlossen und dann den gleichen Befehl ausgeführt. Und das löst das Problem für mich.
quelle
Wie Martin Kearn in einem Kommentar betonte, löste das Schließen von Visual Studio diese Probleme mit der npm-Berechtigung für mich. Offensichtlich sperrt VS manchmal Dateien
node_modules
.quelle
Ich bekam das Gleiche. Ich habe das nirgendwo gefunden, aber es hat mich beeindruckt, dass unsere VMs dazu neigen, Dateien in einen schreibgeschützten Zustand zu versetzen. Also habe ich die
package.json
Dateieigenschaften geöffnet undRead-only
auf der Registerkarte "Allgemein" die Auswahl aufgehoben.Schritte
package.json
Datei.quelle
Dies ist ein typischer Fehler, der durch Antivirus verursacht wird. Es gibt eine Problemumgehung für Fälle wie meinen, in denen ich A / V (Unternehmensrichtlinie) nicht deaktivieren kann.
Sie müssen das
polyfills.js
Innenpaket ändernNpm
:[NODE_HOME]/node_modules/npm/node_modules/graceful_fs/polyfills.js
Suchen Sie nach dieser Aussage:
Innerhalb dieser Anweisung gibt es eine Zeitüberschreitung, die im Fehlerfall einen erneuten Versuch durchführt. Das Problem ist, dass in einigen Fällen die Datei nach dem Timeout immer noch von der Klimaanlage gesperrt wird. Die Lösung besteht darin, das Timeout herauszureißen und diese Anweisung in einer Schleife zu lassen. Die Änderung mit dem vorherigen Code kommentierte:
quelle
In meinem Fall wurde etwas blockiert und durch einen schnellen Neustart wurde das Problem behoben.
quelle
Ich hatte dieses Problem mehrmals nur unter Windows. Ich versuche es normalerweise in der Reihenfolge.
npm install --force
node_modules/
Wenn Sie dies normalerweise
npm install
nach einem dieser Schritte versuchen, wird das Problem behoben.quelle
Der Versuch, eine Datei in einen anderen bereits vorhandenen Dateinamen umzubenennen, kann
EPERM
unter Windows zu einem Fehler führen.quelle
Ich habe meine Fensterfestplatten mit dem Metadaten-Flag erneut bereitgestellt und sofort geholfen: https://devblogs.microsoft.com/commandline/chmod-chown-wsl-improvements/
Danach muss sudo nicht mehr für npm-Befehle verwendet werden, da die Metadaten die Windows- und Linux-Datei- / Verzeichnisberechtigungen in Schach halten.
quelle
Ich hatte das gleiche Problem nach dem Update auf npm auf 5.4.2, npm gab den gleichen Fehler für die meisten npm-Befehle aus. Einige Lösungen schlagen vor, es auszuführen
--no-optional
, aber es hat nicht immer funktioniert.Andere schlugen ein Downgrade vor, aber ich wollte kein Downgrade durchführen.
Ich vermutete, dass es ein Problem mit der Installation gab, nicht sicher, was es war.
Also habe ich meine npm neu aktualisiert:
und hat seitdem gut funktioniert.
quelle
npm scheiterte für mich an
scandir
:... was möglicherweise durch den Versuch von npm verursacht wird, Dateien zu "ändern", die möglicherweise von anderen Prozessen gesperrt wurden, wie hier und in einigen anderen Github-Threads. Nach dem erzwungenen Bereinigen des Caches, Überprüfen des Caches, Ausführen als Administrator, Deaktivieren des AV usw. Die Lösung, die tatsächlich für mich funktionierte, bestand darin, alles zu schließen, was die Dateien möglicherweise sperren könnte (dh meinen Computer neu starten).
Ich hoffe, das hilft jemandem, der Probleme hat.
quelle
Ich hatte das gleiche Problem. Der Grund für den Fehler sind nicht unterstützte Zeichen im Pfad zur Datei. Ersetzte die kyrillische in Englisch - es half.
quelle
Für einige könnte der Ordner AppRoot \ npm ein Problem sein. Manchmal wird der AppRoot-Ordner als Netzwerk freigegeben markiert und daher blockiert Antivirus das Material. Folgen Sie dem Link unten für eine vollständige Lösung.
https://alastaircrabtree.com/fixing-intermittant-eperm-operation-not-permitted-on-npm-install/
Ich hoffe das hilft.
quelle
Öffnen Sie die Eingabeaufforderung als Administrator, navigieren Sie zum Projektspeicherort und führen Sie dann npm install aus. es hat bei mir funktioniert.
quelle
In meinem Fall, in dem
npm: v6.9.0
&&node: v10.16.1
on ausgeführt wurdeWindows
, musste ich meine CLI (git bash) als Administrator ausführen . Dann wurden Pakete ohne Warnungen / Fehler installiertquelle
Meine Antwort ist zuerst zu tun
npm cache clean --force
. Führen Sie dann ausnpm install -g [email protected]
, um die Version npm 5.3.0 zu installieren. Für mich funktioniert diese npm-Version ohne Probleme.quelle
Ich habe folgendes gemacht:
npm install -g [email protected]
c:/users/[username]/AppData/Roaming/npm-cache
npm cache clean --force
npm install
.quelle
Löschen Sie einfach den Paketordner aus dem Pfad der globalen npm-Pakete. Installieren Sie dann das Paket neu. Beachten Sie, dass die Pakete global installiert sind in: C: \ Benutzer \ Ihr Name \ AppData \ Roaming \ npm \ Knotenmodule
quelle
Ich hatte das gleiche Problem in Windows 10. Befolgen Sie einfach diese Schritte:
Öffnen Sie cmd als Administrator.
Installieren Sie das aktualisierte npm-Paket.
npm i -g npm
npm init --yes
quelle
Das Ausführen von Befehlen als Super Admin hat bei mir funktioniert. Wiederholen Sie den Vorgang, nachdem Sie den Editor geschlossen haben, in dem Sie arbeiten.
quelle
Ich hatte auch damit zu kämpfen. Ich habe endlich eine Lösung, die gut funktioniert, wenn Sie nvm verwenden:
cd ~/.nvm/versions/node/{your node version}/lib/
npm install npm
und das ist es.
quelle
Dies kann an Ihrer Antivirensoftware liegen. Wenn Sie AV nicht deaktivieren können, können Sie versuchen, Ihren globalen NPM-Installationsort zu ändern, während der Knoten in das APPDATA-Verzeichnis installiert wird, das von AV Engines aktiv überwacht wird. Versuchen Sie, die folgenden Befehle auszuführen:
npm config set Präfix "IHR BENUTZERDEFINIERTER STANDORT" npm config set set cache "IHR BENUTZERDEFINIERTER STANDORT"
Löschen Sie das Verzeichnis node_modules und installieren Sie Ihr Paket erneut.
quelle
In meinem Fall schien die Einstellung
typescript.disableAutomaticTypeAcquisition
in Visual Studio Codetrue
zu helfen.quelle
Das Schließen von PHPStorm hat das Problem für mich behoben.
quelle
Ich habe VS geschlossen und den Ordner node_modules gelöscht.
Dann lief:
Dann musste die Eigenschaft so geändert werden, dass sie nicht nur im Ordner node_modules schreibgeschützt ist, sobald sie ausgeführt wurde.
Dann lief:
Dann öffnete sich das Projekt wieder in VS und die package.json sah mit den Abhängigkeiten richtig aus.
Ähnlich wie andere, die davon sprechen, im Ordner node_modules schreibgeschützt zu sein und VS zu schließen, um die npm-Installation erneut auszuführen.
quelle
Wenn Sie das Problem mit PHP Storm haben:
quelle