【问题标题】:angular 5 with electron-packager角度 5 与电子包装器
【发布时间】:2019-03-07 19:19:38
【问题描述】:

我尝试使用 electron-packager 将电子项目构建到窗口应用程序,但出现此错误。

无法从“/var/www/windowapp/electron-angular-project/node_modules/@angular-devkit/core/node_modules/chokidar”中找到模块“fsevents”

    This normally means that either you have deleted this package already somehow (check your ignore settings if using electron-packager).  Or your module installation failed.

有谁知道如何解决这个问题,这是怎么回事?

【问题讨论】:

    标签: electron angular5


    【解决方案1】:

    这是我的 2 美分,我做了一个没有错误的包,但也避免添加不必要的文件:

    electron-packager . --no-prune --ignore=/node_modules --ignore=/e2e --ignore=/src
    

    electron-packager 期望您已经运行了 angular 构建过程:

    ng build --prod
    

    您可以将此脚本添加到package.json:

    "electron-package": "ng build --prod && electron-packager . --no-prune --ignore=/node_modules --ignore=/e2e --ignore=/src --overwrite"
    

    然后运行:

    npm run electron-package
    

    【讨论】:

    • 感谢您的回答。让我试试这个 cmd
    【解决方案2】:

    对 Michael Denny "electron-package": "ng build --prod && electron-packager . --no-prune --ignore=/node_modules --ignore=/e2e --ignore=/src --overwrite" 提供的答案稍作修改,我可以打包我的电子角度 7 应用程序。请注意,根据具体情况,可能需要对这些命令进行细微修改。就我而言,以下命令有效。

    "electron-package": "ng build --prod --base-href ./ && electron-packager . --no-prune --ignore=/e2e --ignore=/src --overwrite"

    有什么变化?

    删除--ignore=/node_modules
    原因:如果我在构建时添加此选项,则以 Module Not Found 错误结束

    添加了--base-href ./
    原因:否则,以错误结束Failed to load resource: net::ERR_FILE_NOT_FOUND

    通过这两个修改,我可以打包我的电子角度 7 应用程序。包的大小接近 100MB。我正在寻找减小这个尺寸的方法。

    【讨论】:

      【解决方案3】:

      在您的应用所在的目录中,尝试运行此命令

      electron-packager . --no-prune
      

      关于这个命令的更多信息可以在这里找到https://github.com/electron-userland/electron-packager/blob/master/usage.txt

      【讨论】:

      • 我也可以使用 --no-prune 构建我的应用程序,但是它会复制所有 node_modules 文件夹以及 devDependencies,我不想要它。如果没有 --no-prune 它应该编译它就好了,为什么不呢?
      • 好吧,就我而言,我这样做只是为了制作一个更干净的包:electron-packager . --no-prune --ignore=/node_modules --ignore=/e2e --ignore=/src
      【解决方案4】:

      这与问题 #821in electron-packager 有关删除可选的平台特定依赖项(可能仅在 Windows 上运行打包程序时)。

      --no-prune 解决了开发过程中的问题,但不适用于生产。

      恢复到 v11.2.0 也解决了这个问题。

      【讨论】:

        猜你喜欢
        • 2019-03-10
        • 1970-01-01
        • 2019-12-27
        • 2019-12-03
        • 2017-03-13
        • 2017-12-22
        • 2017-06-11
        • 2014-08-30
        • 2021-08-11
        相关资源
        最近更新 更多