无论我在什么目录下,无论我在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 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 ]

I have tried and uninstalling/reinstalling nodejs multiple times, I even deleted npm and npm-cache folders in C:\Users\me\AppData\Roaming. I'm not sure what went wrong to cause this. One second it was working fine, and now I can't get rid of this error. The explanation in the log does not make sense, as it gives this error in any directory. I should note that running a command prompt as administrator does not give this error. I'm pulling my hair out this Friday evening trying to get this fixed, any help would be greatly appreciated!


当前回答

在我的情况下,我的错误是假设,脚本允许与目录一起工作,但它等待FILE PATH,所以尝试设置文件的完整路径。

我的情况是:

['/var/task/myFolder']

但正确的道路应该是:

['/var/task/myFolder/sample.tgs']

与无服务器上木偶机内部铬使用相关的项目是lambda。希望,它有帮助。

其他回答

在我的情况下,我在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'

我读过npm.community尝试安装没有sudo:

npm install create-react-app -g

它实际上解决了我的问题!!

只需删除c:users>'username'中的.npmrc文件夹,并尝试运行命令,它将被解决!

在我的情况下,我得到了“EISDIR:非法操作的目录,读取”,因为在我的.angular-cli。我没有在“脚本”中提供完整的路径:

例如,我有

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

事实上,它本该如此

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

做一个完整的卸载,包括删除路径等,重新安装已经解决了这个问题,虽然非常奇怪的问题。

如何从Windows中完全删除node.js

在设置样板代码时,我也遇到了类似的问题。它将我的bundle.js文件作为目录读取。正如这里所述。EISDIR意味着它是一个目录而不是一个文件。为了解决这个问题,我删除了该文件,然后重新创建(它最初是自动创建的)。 如果你找不到文件(因为它是隐藏的),只需使用终端找到并删除它。