Bower install: Error: EISDIR: illegal operation on a directory, read
Bower install: Error: EISDIR: illegal operation on a directory, read
我不得不将 node.js 升级到 v4+(现在是 4.1.0),我现在遇到 Bower (1.5.2) 的问题。不过,我不能 100% 确定问题是在 node.js 升级后立即出现的。
在我所有的 angular/ionic 项目中,我在发出 "bower install" 时得到 "Error: EISDIR: illegal operation on a directory, read"。这是堆栈跟踪:
Error: EISDIR: illegal operation on a directory, read
at Error (native)
at Object.fs.readSync (fs.js:603:19)
at Object.fs.readSync (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\node_modules\graceful-fs\polyfills.js:218:23)
at Object.fs.readFileSync (fs.js:438:24)
at C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\util\rc.js:75:27
at Array.forEach (native)
at json (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\util\rc.js:74:14)
at rc (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\util\rc.js:31:9)
at Config.load (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\Config.js:14:20)
at Function.Config.read (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\Config.js:49:19)
在另一台计算机上,使用旧版本的 bower (1.3.2),没有 graceful-fs,也没有问题。
我找到了很多关于这个问题的帖子,但这些解决方案对我不起作用。
据我了解这些帖子,问题似乎是代码试图将目录作为文件读取。
有没有办法找出哪个目录正在作为文件访问?
(比如在 polyfills.js 中打印到控制台?)
这可能会导致我找到这个问题的原因。
非常感谢!
在调试 bower js 代码后,我找到了解决方案。
我不知道为什么,但我的根文件夹 ("C:\.bowerrc") 中有一个“.bowerrc”文件夹。该文件夹是空的。
删除文件夹解决了问题!
我不得不将 node.js 升级到 v4+(现在是 4.1.0),我现在遇到 Bower (1.5.2) 的问题。不过,我不能 100% 确定问题是在 node.js 升级后立即出现的。 在我所有的 angular/ionic 项目中,我在发出 "bower install" 时得到 "Error: EISDIR: illegal operation on a directory, read"。这是堆栈跟踪:
Error: EISDIR: illegal operation on a directory, read
at Error (native)
at Object.fs.readSync (fs.js:603:19)
at Object.fs.readSync (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\node_modules\graceful-fs\polyfills.js:218:23)
at Object.fs.readFileSync (fs.js:438:24)
at C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\util\rc.js:75:27
at Array.forEach (native)
at json (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\util\rc.js:74:14)
at rc (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\util\rc.js:31:9)
at Config.load (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\Config.js:14:20)
at Function.Config.read (C:\Users\mvrm\AppData\Roaming\npm\node_modules\bower\node_modules\bower-config\lib\Config.js:49:19)
在另一台计算机上,使用旧版本的 bower (1.3.2),没有 graceful-fs,也没有问题。
我找到了很多关于这个问题的帖子,但这些解决方案对我不起作用。
据我了解这些帖子,问题似乎是代码试图将目录作为文件读取。
有没有办法找出哪个目录正在作为文件访问? (比如在 polyfills.js 中打印到控制台?) 这可能会导致我找到这个问题的原因。
非常感谢!
在调试 bower js 代码后,我找到了解决方案。 我不知道为什么,但我的根文件夹 ("C:\.bowerrc") 中有一个“.bowerrc”文件夹。该文件夹是空的。 删除文件夹解决了问题!