Utknąłem z tym błędem bez względu na katalog, w którym się znajduję i co wpiszę po „npm” w cmd.exe. Oto plik 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 ]
Wielokrotnie próbowałem odinstalować / ponownie zainstalować nodejs, usunąłem nawet foldery npm i npm-cache w C: \ Users \ me \ AppData \ Roaming. Nie jestem pewien, co poszło nie tak, aby to spowodować. Sekundę działało dobrze, a teraz nie mogę pozbyć się tego błędu. Wyjaśnienie w dzienniku nie ma sensu, ponieważ podaje ten błąd w dowolnym katalogu. Powinienem zauważyć, że uruchomienie wiersza poleceń jako administrator nie powoduje tego błędu. Wyrywam włosy w ten piątek wieczorem, próbując to naprawić, każda pomoc byłaby bardzo mile widziana!
Odpowiedzi:
Napotkałem ten sam problem podczas zmiany niektórych ustawień npm. Popełniłem błąd z jednym
npm config set
poleceniem i dodałem linię odnoszącą się do nieistniejącego katalogu doC:\Users\{User}\.npmrc
. Po ręcznym usunięciu tej linii z.npmrc
programu problem zniknął.źródło
npm
polecenie przestało działać całkowicie, żadne rozwiązanie nie działało poza Twoją odpowiedzią, dzięki!EISDIR oznacza „ Error, Is Directory ”. Oznacza to, że NPM próbuje coś zrobić z plikiem, ale jest to katalog . W twoim przypadku NPM próbuje " odczytać " plik będący katalogiem (linia: 4). Ponieważ operacji nie można wykonać, zgłaszany jest błąd.
Trzy rzeczy, których należy się upewnić.
źródło
Miałem ten sam problem dzisiaj po uaktualnieniu mojego npm z wersji 6.4.1 do wersji 6.5.0. Naprawiłem to, pobierając instalator .pkg (zalecany dla większości użytkowników) z node.js i później go uruchomiłem .
źródło
W moim przypadku otrzymałem komunikat „EISDIR: nielegalna operacja na katalogu, przeczytaj”, ponieważ w moim pliku .angular-cli.json nie podano pełnej ścieżki w „skryptach:”
Na przykład miałem
Właściwie to powinno
źródło
Miałem ten sam problem na Mac OS X (instalowanym z homebrew), a .npmrc nie jest jedynym miejscem, w którym przechowywane są zmienne konfiguracyjne węzła. W / usr / local / etc znajduje się plik konfiguracyjny glocal npmrc, który musisz edytować za pomocą tego polecenia:
Usuń
ca=
linię lub jakiekolwiek ustawienie konfiguracyjne, które zepsuło twoją instalację, zapisz ten plik i spróbuj ponownie npm, a powinieneś zobaczyć, jak działa.źródło
Te dziwne błędy wystąpiły ostatnio na moim komputerze z OSX.
Mogę sobie pomóc w szybki i brudny sposób, biegając:
sudo chmod -R 777 /usr/local/lib/node_modules/
Wydawało się, że coś zepsuło prawa dostępu do wszystkich globalnych modułów węzłów.
źródło
U mnie poprawka polegała na dodaniu ukośnika po nazwie katalogu
źródło
Wykonanie całkowitego odinstalowania, w tym usunięcia ścieżek itp., I ponowna instalacja rozwiązało problem, ale bardzo dziwny problem.
Jak całkowicie usunąć node.js z systemu Windows
źródło
meteor
projektu--react
spowodowało ten problem, ale usunięcie projektu i ponowne utworzenie go działało (OS X).Miałem ten problem z łykiem. Problem polegał na tym, że gulp dodał zależność do mojego pliku źródłowego i myślę, że npm próbował go otworzyć:
Upewnij się, że w pliku package.json nie ma dziwnych odniesień.
źródło
Sprawdź, czy uruchamiasz instalację npm z właściwego katalogu.
(Na przykład plik package.json może znajdować się o jeden dodatkowy katalog w dół).
źródło
Jeśli twój problem jest związany z pakietem React Native. Spróbuj zresetować pamięć podręczną za pomocą
react-native start --reset-cache
.źródło
W moim przypadku zapomniałem podać pełną ścieżkę do jednego z żądanych plików. Po przejściu pełnej ścieżki do pliku zadziałało :)
źródło
W moim przypadku napotkałem ten problem podczas instalacji
create-react-app
zaMAC (Mojave OS)
pomocą następującego polecenia:i otrzymałem takie błędy:
Przeczytałem npm.community, które próbują zainstalować bez
sudo
:i faktycznie rozwiązało mój problem .. !!
źródło
Upewnij się, że node_modules (i twój root package.json) nie zawierają odniesienia do modułu npm "package.json". Usunięcie FOLDERa package.json z node_modules rozwiązało problem.
źródło
Miałem podobny problem podczas konfigurowania kodu standardowego. Czytał mój plik bundle.js jako katalog. Tak jak podano tutaj. EISDIR oznacza katalog, a nie plik. Aby rozwiązać problem, usunąłem plik i po prostu go odtworzyłem (pierwotnie został utworzony automatycznie). Jeśli nie możesz znaleźć pliku (ponieważ jest ukryty), po prostu użyj terminala, aby go znaleźć i usunąć.
źródło
Miałem ten sam problem, dopóki nie spróbowałem usunąć folderu .git. Zadziałało. Myślę, że ten typ problemu może mieć różne przyczyny.
źródło
Miałem ten sam problem. W moim katalogu znajdował się połączony folder, który powodował problem. dodałem ten folder, aby ignorować listę, a następnie zaczął działać dobrze, zgodnie z oczekiwaniami.
źródło
Wiem, że to nie jest konkretnie pytanie o wieczne js ... ale Google mnie tu prowadzi, więc ... Dla mnie to było tak proste jak kończący ukośnik.
Właśnie zmieniłem:
Do:
I błąd zniknął
źródło
Upewnij się, że sprawdziłeś swoją wersję npm i czy występują z nią problemy. Miałem ten sam problem w czasie pisania tego posta i odkryłem, że moja wersja npm (6.5) ma problemy. Musiałem odinstalować i ponownie zainstalować npm w wersji 6.4.1 i wtedy wszystko zaczęło znowu działać świetnie.
źródło
Miałem zepsute dowiązanie symboliczne do node_modules w podfolderze
źródło
W moim przypadku te kroki rozwiązały mój problem:
npm
procesu(CTRL + C)
npm
znowu działaźródło
W moim przypadku używam systemu Windows 10 w języku hiszpańskim, a ta wersja zawiera angielskie i hiszpańskie nazwy katalogów. Mój problem polegał na tym, że katalog pulpitu ma tę nazwę dla niektórych poleceń i
escritorio
dla innych. Uważam, że npm nie może tego rozwiązać. Moim rozwiązaniem było po prostu przejście do innego katalogu zaczynającego się od C: \ innego niż mój katalog domowy.źródło
Miałem podobny problem. Ustawiam cafile poleceniem:
Udało mi się rozwiązać ten problem, usuwając ustawienia pliku certyfikatu i ustawienie
strict-ssl = false
.źródło
Rozwiązałem ten problem, przenosząc katalog z dysku exFAT, który nie obsługuje dowiązań symbolicznych.
Mój dysk exFat jest współdzielony między osx i partycją systemu Windows bootcamp, więc kiedy próbowałem sklonować i zainstalować projekt npm, kończyło się to niepowodzeniem, ale nigdy nie wyjaśnia, że exFAT nie obsługuje tej funkcji.
Istnieją sterowniki, które możesz zainstalować, aby dodać możliwość dowiązania symbolicznego, ale będziesz musiał wykonać wiele konfiguracji ręcznie w porównaniu do uruchomienia prostego skryptu npm.
źródło
W przypadku systemu Mac OS: Jeśli zostanie zainstalowany bezpośrednio ze strony nodejs, plik npmrc będzie znajdować się w / usr / local / etc / npmrc . Po prostu usuń konfigurację, która jest niezdefiniowana, a problem zostanie rozwiązany.
źródło
Właśnie usunąłem linię
dla laravel 5.6 z vue.js. w webpack.mix.js
źródło
W moim przypadku
C:\Users\{user}\AppData\local\npm
pliki były ukryte, więc nie mogłem znaleźć i usunąć katalogu problemów. Zrozumienie tego zajęło mi DNI!Więc sprawdź dokładnie, aby odkryć wszystkie foldery, aby ich nie przegapić! Oto link do zrobienia tego, jeśli nie wiesz jak.
źródło