Electron-builder无法将下载的内容移到最终位置

使用Windows 10,Node v12.13.0和NPM v6.12.0以及电子版,当我运行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 注册表= http://registry.npmjs.org/ 以管理员身份运行我的cmd(管理员:命令提示符) 重新启动计算机并刷新npm缓存 禁用的防病毒软件然后发现了电子生成器

然后我安装了electronic-builder,但是当运行electronic-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 \ Cache \ nsis \ nsis-3.0.4:访问为否认。   ⨯ENOENT:没有这样的文件或目录,复制文件'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'stackTrace =                                                                                                                                                                                                                                              错误:ENOENT:没有这样的文件或目录,复制文件'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'                                                                                                                                                                                                                                                  在processImmediate(internal / timers.js:439:21)

由于IT限制,我无法在上面的指定目录中创建文件夹...有没有办法我可以在package.json文件中指定另一个文件夹/路径,以期解决此阻止/错误?我确实有一个可以正常运行的exe,但是在生成过程中出现此错误使我担心某些内容不是100%。任何人都可以分享一些建议或解决方法吗?

ergasfgsafg 回答:Electron-builder无法将下载的内容移到最终位置

在这种情况下,解决方案是转到下面引用的文件夹 C:\ Users \ devbox \ AppData \ Local \ electron-builder \ Cache \ nsis \ 然后重命名已下载但未重命名为其中包含必要内容的临时文件夹之一(从上面进行几次尝试后,我有很多临时文件夹) nsis-3.0.4 当然,在这种情况下,请确保内容确实在其中。 然后运行electron-builder,错误将不再出现,并且您将在与上面相同的路径中看到一个nsis-resources-3.4.1文件夹。

,

我还遇到了在CI环境中运行电子生成器的问题。对我来说解决的是在package.json中的electronic-builder的配置中指定缓存目录。

例如:

{
    "name": "...","dependencies": [ ... ],"build": {
        "appId": "...","files": [ ... ],"electronDownload": {
          "cache": "./.electron-cache"
        }
    }
}

–将电子下载到项目本地的.electron-cache目录中。我也将此目录添加到了.gitignore列表中。

electron-builder docs中的更多信息。

,

我遇到了同样的问题。 显然,电子构建器在不检查目标路径中的目录是否存在的情况下进行盲复制,甚至不尝试创建它们,这引发了异常。 我在目标路径 [{YourTargetPath}/resources] 中创建了所有不存在的目录,以便它可以复制并正常工作。

本文链接:https://www.f2er.com/3143838.html

大家都在问