在 jspm 中安装 ReactFire 时出现 EPERM 错误
Posted
技术标签:
【中文标题】在 jspm 中安装 ReactFire 时出现 EPERM 错误【英文标题】:EPERM error installing ReactFire in jspm 【发布时间】:2016-11-15 06:08:30 【问题描述】:我正在尝试使用 jspm 安装 ReactFire。我使用的命令是:
jspm install npm:reactfire
它安装了一堆依赖,然后报错:
warn Error on build
Error: EPERM: operation not permitted, open 'C:\Users\aldel\AppData\Local\.jspm\packages\npm\firebase@3.1.0\app.js'
at Error (native)
err Error building package npm:firebase.
warn Installation changes not saved.
有时它会在 auth.js 而不是 app.js(同一目录)上给出错误。运行上述命令时,似乎整个目录(即firebase@3.1.0)是由jspm创建的,所以看起来它是被创建的,然后它的创建者立即无法访问。
我试过了:
在 jspm 命令行中添加 -f 在 Firebase、React 和 React-Dom 之前或之后安装 以管理员权限运行 清除 npm 和 jspm 中的缓存 弄乱文件和目录权限 (编辑)添加各种 -o 选项以尝试阻止从 npm 安装 Firebase 依赖项我也刚刚注意到,如果我执行jspm install npm:firebase
,也会发生同样的错误。我认为当 Firebase 作为 ReactFire 的依赖项安装时会发生上述问题。只是做jspm install firebase
从github:firebase/firebase-bower
安装它,而不是从npm:firebase
安装它(可能是因为 npm:firebase 不起作用??)。
所以我认为npm:firebase
如何被下载和安装,和/或npm:reactfire
如何依赖npm:firebase
存在问题。但我不确定如何修复或解决它。我对 npm 和 jspm 很陌生。
我在 Windows 上。对不起。
有什么想法吗?
【问题讨论】:
看起来很像 [***.com/questions/33158793/…,但这个 jspm 错误显然已于去年 10 月解决。我正在运行最新版本的 jspm。 【参考方案1】:好吧,当我最终想尝试时,它似乎工作正常:
jspm install reactfire=github:firebase/reactfire
我不知道为什么我不早点尝试,除了文档鼓励使用 npm 而不是 github 并且似乎说 github 包在没有特殊修改或覆盖的情况下通常无法工作(我没有管理弄清楚最后一部分是如何工作的)。
【讨论】:
我收到了相同的错误消息,但我使用的是 Aurelia 而不是 React,并且我在执行jspm install
时遇到了错误。我必须更新我的包的依赖项以使用 firebase
v3.x 而不是 2.3.2。它安装了早期版本没有问题。
经过进一步调查,我怀疑这是firebase
模块本身的错误。我从package.json
中删除了所有内容,除了对firebase
的调用:``` "dependencies": "firebase": "^3.4.0" , "jspm": "dependencies": "firebase" : "npm:firebase@3.4.0" , "overrides": "npm:core-js@1.2.6": "main": "client/shim.min" ``跨度>
【参考方案2】:
这显然是由于jspm
中的bug。尝试运行以下步骤:
npm update jspm
npm cache clear
jspm cc
jspm install -f -y
【讨论】:
以上是关于在 jspm 中安装 ReactFire 时出现 EPERM 错误的主要内容,如果未能解决你的问题,请参考以下文章
在 Ubuntu 中安装 Torch 时出现 CMake 错误