node.js - 电子生成器无法将下载的内容移动到最终位置
问题描述
使用 Windows 10、Node v12.13.0 和 NPM v6.12.0 以及 electron,当我运行 npm run package-win 来构建我的 exe 时,我收到以下信息,我以前从未经历过这样的事情。
EPERM:不允许操作,lstat 'C:\Users\devbox\AppData\Local\Temp\electron-download-sOTFU2\electron-v1.8.8-win32-ia32.zip'
我尝试过的事情:
编辑了我的 .npmrc 文件,其中包含以下内容: strict-ssl=false registry= http://registry.npmjs.org/ 以管理员身份运行我的 cmd(管理员:命令提示符) 重新启动我的计算机并刷新 npm 缓存 禁用防病毒软件然后发现电子-建造者
然后我安装了 electron-builder 但在运行 electron-builder -w 时遇到以下问题:
• 无法将下载的文件移动到最终位置(另一个进程下载速度更快?) path=C:\Users\devbox\AppData\Local\electron-builder\Cache\nsis\nsis-3.0.4 tempFile=C:\Users\devbox\AppData \Local\electron-builder\Cache\nsis\527857811 错误=重命名 C:\Users\devbox\AppData\Local\electron-builder\Cache\nsis\527857811 C:\Users\devbox\AppData\Local\electron-builder\缓存\nsis\nsis-3.0.4:访问被拒绝。⨯ ENOENT:没有这样的文件或目录,copyfile 'C:\Users\devbox\AppData\Local\electron-builder\Cache\nsis\nsis-3.0.4\elevate.exe' -> 'C:\Users\devbox\ Desktop\electron\boxapp\dist\win-unpacked\resources\elevate.exe'
由于 IT 限制,我无法在上面的指定目录中创建文件夹...有没有办法可以在我的 package.json 文件中指定另一个文件夹/路径以希望绕过这个块/错误?我确实有一个正在运行的 exe,但是构建过程中的这个错误让我担心某些事情不是 100%。任何人都可以分享一些建议或解决方法吗?
解决方案
在这种特殊情况下,解决方案是转到 C:\Users\devbox\AppData\Local\electron-builder\Cache\nsis\ 下面引用的文件夹,然后重命名其中一个临时文件夹(经过几次尝试后我有很多) 已下载但未将必要的内容重命名为 nsis-3.0.4 当然要确保内容实际上在里面,在这种情况下它们是。然后运行 electron-builder ,错误将不再出现,您将在与上面相同的路径中看到一个 nsis-resources-3.4.1 文件夹。
推荐阅读
- php - Mybb sceditor 额外字段
- xcode - SwiftUI macOS 运行功能以将菜单项设置为启用?
- c++ - 如果用户没有输入任何内容或输入错误,如何重新输入用户的输入?
- c# - 如何从总文本框中多次减去折扣文本框?
- android - Mac OS Catalina 找不到我的安卓 LG KV20
- python - 在与不和谐 py 排名中锁定一个排名
- flutter - Dart 依赖注入 - 为什么我不能将实例引用传递给类成员?
- visual-studio - 从 github / Visual Studio git 中删除已提交的图像文件
- c++ - 变量未在范围内声明且预期的主表达式之前,令牌
- c++ - 如何正确实现容器类中元素的更改?