【问题标题】:getting "Error: EINVAL: invalid argument, read" for "npm install --save-dev eslint --verbose"为“npm install --save-dev eslint --verbose”获取“错误:EINVAL:无效参数,读取”
【发布时间】:2018-04-15 17:06:19
【问题描述】:

这里有关于如何让“npm install --save-dev eslint --verbose”工作的任何想法/帮助。我不断得到:

Error: EINVAL: invalid argument, read

我已经建立了一个新的 react-native 项目:

react-native init gcLists

E:\gcLists>npm -v
5.5.1
E:\gcLists>yarn -v
1.2.1
E:\gcLists>react-native -v
react-native-cli: 2.0.1
react-native: 0.49.5

npm install --save-dev eslint --verbose

日志的最后部分:

npm http fetch GET 304 https://registry.npmjs.org/slice-ansi 104ms (from cache)
npm verb correctMkdir D:\Users\greg\AppData\Roaming\npm-cache\_locks correctMkdir not in flight; initializing
npm verb lock using D:\Users\greg\AppData\Roaming\npm-cache\_locks\staging-255cd84f0d76b150.lock for E:\gcLists\node_modules\.staging
npm info lifecycle semver@5.4.1~preuninstall: semver@5.4.1
npm info lifecycle semver@5.4.1~uninstall: semver@5.4.1
npm verb unbuild rmStuff semver@5.4.1 from E:\gcLists\node_modules
npm verb unlock done using D:\Users\greg\AppData\Roaming\npm-cache\_locks\staging-255cd84f0d76b150.lock for E:\gcLists\node_modules\.staging
npm verb stack Error: EINVAL: invalid argument, read
npm verb stack     at D:\Users\greg\AppData\Roaming\npm\node_modules\npm\lib\utils\gently-rm.js:275:7
npm verb stack     at D:\Users\greg\AppData\Roaming\npm\node_modules\npm\node_modules\iferr\index.js:13:50
npm verb stack     at D:\Users\greg\AppData\Roaming\npm\node_modules\npm\node_modules\graceful-fs\polyfills.js:287:18
npm verb stack     at FSReqWrap.oncomplete (fs.js:154:5)
npm verb cwd E:\gcLists
npm verb Windows_NT 6.1.7601
npm verb argv "C:\\Program Files\\nodejs\\node.exe" "D:\\Users\\greg\\AppData\\Roaming\\npm\\node_modules\\npm\\bin\\npm-cli.js" "install" "--save-dev" "eslint" "--verbose"
npm verb node v8.7.0
npm verb npm  v5.5.1
npm ERR! code EINVAL
npm ERR! EINVAL: invalid argument, read
npm verb exit [ 1, true ]

npm ERR! A complete log of this run can be found in:
npm ERR!     D:\Users\greg\AppData\Roaming\npm-cache\_logs\2017-11-03T02_38_08_842Z-debug.log

注意事项:

  • 在 Windows 7 上

更新: * npm install --save-dev eslint --verbose的结果可以在here.找到

【问题讨论】:

  • 你能添加环境变量NODE_DEBUG=fs,module然后运行你的安装吗?这将提供更多日志以及我们可以更好地挖掘的内容。如果日志太大,请创建一个pastebin
  • 好的 - 今晚必须在这个时间回复你...
  • @TarunLalwani 只是在检查 - 这可以运行 react-native 吗?即“react-native run-android”?那么这个日志会出现在哪里?
  • 执行您之前所做的并得到错误。这基本上会在执行 npm 命令时显示日志
  • @TarunLalwani ok 在这里运行了这个结果pastebin.com/NcnpfpQ8

标签: node.js react-native npm react-native-android npm-install


【解决方案1】:

由于您使用的是驱动器号 E:,因此您可能使用的是便携式驱动器。使用格式化为 FAT32 的 USB 棒时,我遇到了同样的问题。我解决了它重新格式化为 NTFS。

【讨论】:

  • 这是我的问题,我最近一直在远程工作,并且在 FAT32 USB 记忆棒上完成了我的开发。谢谢!
  • 我使用的是格式化为 exFAT 的外部 SSD,这就是问题所在。
【解决方案2】:

帮助我的是还删除了我的 package-lock.json 文件。

rm -rf node_modules package-lock.json
npm i

【讨论】:

  • 就我而言,更新 npm 版本后出现该错误。如前所述,这已经解决了这个问题。
  • 解决了我的问题,比建议的解决方案好得多。
【解决方案3】:

有时某些软件包会出现 npm 问题。这可能是基于操作系统/包版本/节点版本/npm 版本兼容性问题的组合。

在这种情况下,最好的办法是尝试使用其他包管理器。用纱线试试这个

yarn add eslint

【讨论】:

  • 我同意这个答案,但有点糟糕,这是最好的解决方案:'(
  • 虽然这行得通。我认为接受作为最佳解决方案并不好。问题在于 node_modules 文件损坏。不在包管理器上。
  • yarn add eslint 解析场景文件添加 ERROR: [Errno 2] No such file or directory: 'add'
  • 这可能是一个不同的问题,我建议发布一个新问题@sabertababaeeyazdi
【解决方案4】:

同样的问题发生在我身上,我所做的是删除整个 node_modules 文件夹并再次运行 npm install。它修复了错误。 原因是在最初的 npm install 中,它被我在中间关闭,导致一些文件崩溃。

【讨论】:

    【解决方案5】:

    尝试清理 npm 缓存:

    npm cache clean
    

    然后再试一次。

    【讨论】:

    • 绑定了“npm cache verify”,不幸的是没有运气。顺便说一句,来自我的终端“从 npm@5 开始,npm 缓存可以从损坏问题中自我修复,并且从缓存中提取的数据保证是有效的。如果您想确保一切一致,请改用“npm 缓存验证”。 "
    • 为了让这个工作现在你需要 npm cache clean --force
    【解决方案6】:

    我在执行npm update 时遇到了错误,所以我删除了一些npm outdated node_modules 并再次运行npm update 并且它起作用了。

    yarn upgrade 也修复了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-04-13
      • 2020-12-23
      • 2016-08-18
      • 2020-09-25
      • 2021-11-11
      • 2016-01-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多