【Electron Froge】解决 linux 环境 window 包的问题

总结:安装MonoWine + 脚本调整

脚本调整方案一:

json 复制代码
{
  "scripts": {
    "start": "electron-forge start",
    "package": "electron-forge package",
    "make": "electron-forge make",
    "package:win32": "electron-forge package -p win32", // 新增
    "make:win32": "electron-forge make -p win32", // 新增
    "publish": "electron-forge publish",
    "lint": "eslint --ext .ts,.tsx ."
  }
}

脚本调整方案二:

shell 复制代码
npm run make -- --platform win32

解题思路(可选)

解决具体问题的过程中要习得方法论。

思索问题

这个问题进一步拆解,会有哪些问题?

  1. 首先要确认能否支持?
  2. 若能支持,环境如何配置?
  3. 若能支持,项目如何配置?

线索推理

步骤一:找到功能模块:生成window包的模块。

通过官网的目录结构,有两种方式来快速锁定:

  1. 阅读 Overview 来快速了解各个模块。
  2. 通过基本演绎法推理 + 阅读简介论证的方式。

细讲方式二:Makers本身最趋向于"打包"的意思,通过简介论证确实如此。

同理:Squirrel.Windows 带个"Windows"八成就是了(推理),看到生成的是exe的文件(验证)。

步骤二:确认 maker-squirrel 模块是否支持。

上面找到的文章并没有相关的线索提及。因此需要重新找资料。

这里需要用到两个重要的常识。

重要常识1:官网的API文档基本都会有对应模块的说明信息。

重要常识2:可以通过项目的链接找到该模块的README文件,里面一般有关键信息或地址。

最终你会找到关键信息:

至此前两个问题已有了明确的解决方案。

步骤三:了解项目该如何配置相关参数。

这里我走了弯路:一开始并没有从脚本参数角度去思考。在自我探索无果后开始了搜索相关博客,直到看到cli参数才点醒了我。

从官网的CLI篇可以找到了关键信息:

重要常识3:及时将博客里的关键信息结合官方文档来进行对照,一来验证方法如今是否可行,二来是建立与官方文档的认知链路。毕竟博客的迭代成本大于官网,而动机又小于官网。

至此,问题就得到了解决。

复盘进阶

吸取了CLI的教训,我大致又浏览了官网其他资料,发现guide模块有一些常见的问题,其中就包括linux环境window包的问题:(真的是蓦然回首,答案却在灯火阑珊处......)

重要常识4:在正确的指令下,好的项目对于问题有日志来引导。

针对常识2与常识5可以为开源社区做贡献:

常识2: 参与一些文档的翻译和更新工作。

常识4: 对于一些日志提示缺失,不合理等提出改进。

参考资料

Electron Froge 官网

相关推荐
0思必得05 小时前
[Web自动化] Selenium处理动态网页
前端·爬虫·python·selenium·自动化
东东5165 小时前
智能社区管理系统的设计与实现ssm+vue
前端·javascript·vue.js·毕业设计·毕设
catino5 小时前
图片、文件的预览
前端·javascript
layman05287 小时前
webpack5 css-loader:从基础到原理
前端·css·webpack
半桔7 小时前
【前端小站】CSS 样式美学:从基础语法到界面精筑的实战宝典
前端·css·html
AI老李7 小时前
PostCSS完全指南:功能/配置/插件/SourceMap/AST/插件开发/自定义语法
前端·javascript·postcss
_OP_CHEN7 小时前
【前端开发之CSS】(一)初识 CSS:网页化妆术的终极指南,新手也能轻松拿捏页面美化!
前端·css·html·网页开发·样式表·界面美化
啊哈一半醒8 小时前
CSS 主流布局
前端·css·css布局·标准流 浮动 定位·flex grid 响应式布局
PHP武器库8 小时前
ULUI:不止于按钮和菜单,一个专注于“业务组件”的纯 CSS 框架
前端·css
电商API_180079052478 小时前
第三方淘宝商品详情 API 全维度调用指南:从技术对接到生产落地
java·大数据·前端·数据库·人工智能·网络爬虫