electron-vue+electron-updater后npm run build 报错ERROR in unknown: Unexpected token (1979:65)问题解决思路

4 篇文章 0 订阅
1 篇文章 0 订阅

electron-vue报错ERROR in unknown: Unexpected token 问题解决思路

前言

最近过年没事在家里完善我自己的开发者助手,是使用electron-vue写的,由于我构想需要软件能自动软升级,所以这几天在家里折腾electron-updater这个插件,最开始我是使用的electron-packager打包方法,所以一直无法使用,最后查阅各种资料根据很多人描述的内容分析软更新应该是需要electron-builder打包方式才能实现。各种折腾各种更换外部组件后开发环境能正常跑起来了,但是打包的时候却踩了一个莫名其妙的问题,那就是ERROR in unknown: Unexpected token (1979:65),是的你没有看错他并没有报出实际的错误位置和细节,这让我很是蛋疼,从昨天中午一直折腾到凌晨两点多都没有得到很好的解决。最后无奈使用网上原有的能打包的demo一个文件一个文件和我本地对比才发现原来问题就出在这个electron-updater插件上。

报错内容

  - building main process
  - building renderer process

   ERROR  failed to build main process

    Hash: c6e912ee62b75ed1f1c3
    Version: webpack 4.46.0
    Time: 9066ms
    Built at: 2021/02/17 上午11:29:52
      Asset     Size  Chunks  Chunk Names
    main.js  357 KiB       0  main
    Entrypoint main = main.js
      [0] external "electron" 42 bytes {0} [built]
      [1] external "path" 42 bytes {0} [built]
      [2] ./node_modules/electron-updater/node_modules/builder-util-runtime/out/index.js 4.46 KiB {0} [built]
      [4] ./node_modules/electron-updater/out/main.js 4.87 KiB {0} [built]
     [11] external "fs" 42 bytes {0} [built]
     [12] ./node_modules/electron-updater/out/providers/Provider.js 4.82 KiB {0} [built]
     [13] external "url" 42 bytes {0} [built]
     [14] ./node_modules/electron-updater/node_modules/fs-extra/lib/index.js 719 bytes {0} [built]
     [23] external "crypto" 42 bytes {0} [built]
     [34] ./node_modules/electron-updater/out/AppUpdater.js 23 KiB {0} [built]
     [67] ./node_modules/electron-updater/out/AppImageUpdater.js 5.55 KiB {0} [built]
     [73] ./node_modules/electron-updater/out/MacUpdater.js 5.35 KiB {0} [built]
     [74] ./node_modules/electron-updater/out/NsisUpdater.js 10.7 KiB {0} [built]
     [75] external "nedb" 42 bytes {0} [built]
    [176] ./src/main/index.js + 1 modules 8.88 KiB {0} [built]
          | ./src/main/index.js 6.94 KiB [built]
          | ./src/main/Update.js 1.92 KiB [built]
        + 162 hidden modules
    
    ERROR in unknown: Unexpected token (1979:65)


error Command failed with exit code 1.

解决思路

通过我的各种测试各种分析发现其实报错ERROR in unknown: Unexpected token 的上一句代码嫌疑很大 162 hidden modules 这不是说我引入的模块被隐藏了嘛?这是为毛??试了各种方法,也查阅了网上的资料都说去掉 ·–hide-modules· 参数但是我的项目中并没有这个参数。也有人说命令参数加入 --color --display --display-modules 例如 webpack --color --display --display-modules 实测也无效。最后想了很久也检查了很久代码被我看出了破绽。

解决方案

想了很久最后查看package.json文件发现我安装electron-updater模块的时候是安装到了devDependencies中,emm打包的时候应该是使用的生产环境也就是dependencies中的包也就是build的时候可能找不到electron-updater模块,提示 hidden modules也就不是很奇怪的问题了(个人感觉这里应该直接给个异常或者警告比较好),那是不是我应该将electron-updater模块安装到dependencies就可以了呢?光有想法是不能解决问题的,说干就干最后发现还真是这个问题导致的。

//在package.json的dependencies中添加electron-updater模块,并且删除devDependencies的electron-updater模块
  "electron-updater": "^4.3.5"
  //然后再npm install后执行 npm run build 看看问题是否得到解决

后记

以上解决方案只针对我个人的项目有用,如果你也遇到同样问题并且对你有帮助的话可以给我点个小小的赞,谢谢哈。

  • 11
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱折腾的小码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值