どのディレクトリにいても、cmd.exeの "npm"の後に何を入力しても、このエラーにはまりません。これは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 ]
Nodejsを複数回アンインストール/再インストールしようとしましたが、C:\ Users\me\AppData\Roamingのnpmフォルダとnpm-cacheフォルダも削除しました。これが原因で何が問題になったのかわかりません。一秒でそれはうまく働いていた、そして今私はこのエラーを取り除くことができない。ログ内の説明は意味がありません。ディレクトリ内でこのエラーが発生するためです。管理者としてコマンドプロンプトを実行しても、このエラーは発生しません。私はこの金曜日の夜私の髪を引っ張ってこの問題を解決しようとしています、どんな助けでも大いに感謝されるでしょう!
私はいくつかのnpm設定を変更している間に私は同じ問題に遭遇した。 1つのnpm config set
コマンドを間違えたため、存在しないディレクトリを参照する行がC:\Users\{User}\.npmrc
に追加されました。 .npmrc
からその行を手動で削除した後、問題は解決しました。
EISDIRは「Error、Is Directory」を表します。これは、NPMがファイルに何かをやろうとしていることを意味しますが、それはディレクトリーです。あなたの場合、NPMはディレクトリであるファイルを「読み込み」しようとしています(4行目)。操作を実行できないため、エラーがスローされます。
ここで確かめるべき3つのこと。
私は私のnpmをバージョン6.4.1からバージョン6.5.0にアップグレードした後も同じ問題を抱えていました。私は node.js から.pkgインストーラー(ほとんどのユーザーに推奨)をダウンロードすることでこれを修正し、その後それを実行しました。
私の場合は、.angular-cli.jsonファイルで "scripts:"にフルパスを指定していなかったため、 "EISDIR:ディレクトリに対する不正な操作、読み取り"を取得していました。
例えば私が持っていた
"scripts": [
"../node_modules/hammerjs",
"../node_modules/moment"
],
実際にはそうであったはずです
"scripts": [
"../node_modules/hammerjs/hammer.min.js",
"../node_modules/moment/min/moment.min.js"
],
私はMac OS X(自作でインストールされた)で同じ問題を抱えていました、そして.npmrcはコンフィグ変数を格納する唯一の場所ノードではありません。このコマンドを使用して編集する必要があるglocal npmrc構成ファイルが/ usr/local/etcにあります。
Sudo nano npmrc
ca=
行を削除するか、インストールを中断した設定が何であれ、そのファイルを保存して、もう一度npmを実行すると、正常に動作するはずです。
これらの奇妙なエラーは私のOSXマシンで最近起こりました。
私は実行することによって自分自身を手早く簡単な方法で手助けすることができます:
Sudo chmod -R 777 /usr/local/lib/node_modules/
何かがすべてのグローバルノードモジュールのアクセス権をめちゃくちゃにしたようです。
あなたの問題がReact Nativeパッケージャに関連している場合。 react-native start --reset-cache
でキャッシュをリセットしてみてください。
適切なディレクトリからnpm installを実行していることを確認してください。
(package.jsonファイルは、たとえば、1つ下のディレクトリに追加できます。)
私にとっての修正はディレクトリ名の後にスラッシュを追加することでした
サブフォルダー内のnode_modulesへの壊れたシンボリックリンクがありました
あなたのnpmのバージョンとそれに問題があるかどうかを確かめてください。この記事の執筆時点で私は同じ問題を抱えていましたが、私のnpmバージョン(6.5)に問題があることがわかりました。私はnpm version 6.4.1をアンインストールして再インストールしなければなりませんでしたそしてそれからすべては再びうまく働き始めました。
私の場合は、これらの手順で問題が解決しました。
npm
プロセスの終了(CTRL + C)
npm
を再度実行しています定型コードを設定中に、私は同様の問題を抱えていた。それはディレクトリとして私のbundle.jsファイルを読んでいました。だからここに述べたように。 EISDIRはディレクトリでありファイルではありません。この問題を解決するために、ファイルを削除して再作成しました(元々自動的に作成されていました)。ファイルが見つからない(隠されているため)場合は、ターミナルを使用してファイルを見つけて削除してください。
私はこれが特に永遠のjsについて尋ねるのではないことを知っています..しかしグーグルはここで私をそこに導きました..私にとってそれは最後のスラッシュのように単純だった。
私はちょうど変更しました:
forever start -a -l /dev/null/ /var/www/node/my_file.js
に:
forever start -a -l /dev/null /var/www/node/my_file.js
そしてエラーは消えました
私はgulpに関してこの問題を抱えていました。問題はgulpが私のソースファイルに依存関係を追加したことであり、私はnpmがそれを開こうとしたと思います:
{
"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"
}
}
Package.jsonファイルに奇妙な参照がないことを確認してください。
私の場合は、次のコマンドでMAC (Mojave OS)
にcreate-react-app
をインストールしているときにこの問題に直面していました。
Sudo npm install create-react-app -g
そして、このようなエラーを得ました:
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'
Sudo
なしでインストールしようとしている npm.community を読みました。
npm install create-react-app -g
そしてそれは実際に私の問題を解決しました..!
パスの削除などを含む完全なアンインストールを実行し、再インストールすることで問題は解決しましたが、非常に奇妙な問題です。
私は同じ問題を抱えていました。問題を引き起こしていた私のディレクトリにリンクされたフォルダがありました。私はリストを無視するためにそのフォルダを追加し、それからそれは期待どおりにうまく働き始めました。
.gitフォルダを削除しようとするまで、同じ問題がありました。出来た。この種の問題にはさまざまな原因があると思います。
私の場合は、要求していたファイルの1つのfullパスを渡すのを忘れていました。働いたファイルのフルパスを渡した後:)