掌握Electron工具链:在Windows操作系统上无缝开发MacOS软件

server/2024/11/17 11:32:30/

这里写自定义目录标题

    • 前言
    • 实现方式
    • 实现过程

前言

🔥🔥🔥Electron作为一个跨平台的构建工具,可以让我们实现快速构建桌面应用,给前端开发带来了巨大的便利。相信使用过Electron,都会面临这么一个问题:需要跨平台构建相关的应用程序。但是Electron明确的表明,构建MacOS的应用,应该在MacOS系统内,这就给我们造成了困扰,要是没有MacOS系统呢?难道我们就不做了吗?
✨✨✨这篇文章就是本着解决跨端构建的问题的,好东西要分享,不是吗?

实现方式

本文将着重说明在window平台下,构建MacOS的dmg格式安装包
electron-vite:2.3.0
vue:3.4.30

作为一个开发,github总是了解的吧,那github action应该也是了解的吧😀
主要的方式就是借用github action强大的CI/CD, 通过编写工作流,在我们提交代码时,执行相关的打包命令实现我们的跨平台构建流程。

实现过程

其它过程按照正常开发流程即可,主要就是一个工作流脚本,在项目的根目录下创建workflows的脚本,当我们代码提交至github仓库时会自动触发工作流脚本并执行

# .github/workflows/build-macos.ymlname: Build macOS Appon:# 当推送获取拉取时触发工作流	push:branches:- mainpull_request:branches:- mainjobs:build-macos:# 指定编译环境: macos-latest | ubuntu-latestruns-on: macos-lateststeps:# 检出当前仓库的所有代码- name: Checkout codeuses: actions/checkout@v2# 安装node环境- name: Set up Node.jsuses: actions/setup-node@v2with:# 指定具体的node版本node-version: '20.18.0'# 安装项目相关依赖包- name: Install dependenciesrun: npm ci# 执行构建相关命令- name: Build Electron apprun: npm run build:mac- name: Upload artifactuses: actions/upload-artifact@v2with:name: macos-dmgpath: dist/mac/*.dmg

除此之外,github action 提供了很多的命令,有需求可以自行去官方文档查看

在这里插入图片描述
在这里插入图片描述


http://www.ppmy.cn/server/142643.html

相关文章

outline 分析

outline 安装 源码 Local development 几个注意点: 有两个数据库,redis和postgresql,可以使用docker,也可以直接本地安装默认有host可配置可不配置默认开启https,所以需要SSL,mkcert 没有使用make up的…

动态网页爬取 —— ajax 与 selenium

动态网页爬取 动态网页简介 动态网页(Dynamic Web Page)是指网页的内容能够根据用户的请求、用户的行为或其他条件动态生成和变化的网页。与静态网页不同,动态网页不是预先存储好的固定内容,而是在用户访问时通过服务器端的处理…

SpringBoot(二十二)SpringBoot集成smart-doc自动生成文档

计划在项目中集成swagger日志框架,经过一顿折腾,发现一个小小的问题。我得springboot框架版本是2.6.13,swagger要匹配这个版本的springboot可能比较麻烦。 这可如何是好…… 经跟社区的大神得讨论,他在用的文档生成工具是smart-doc。我尝试一下集成这个工具。 官网:https:…

leetcodeQ76最小覆盖子串

目录 思路代码 思路 滑动窗口,记录区间【left,right】之间的子串覆盖没覆盖t,就是t里面的元素是不是在区间之内都找到。 有几个比较难的问题 怎么确定满足条件了,就是【left,right】之间的子串已经覆盖t, 我们可以将t用map存,这个map不会…

rust逆向初探

rust 逆向葵花宝典 rust逆向技巧 rust逆向三板斧: [!NOTE] 快速定位关键函数 (真正的main函数):观察输出、输入,字符串搜索,断点等方法。定位关键 加密区 :根据输入的flag,打硬件断点,快速捕获…

LLMs:《Scaling Laws for Precision精度感知的缩放定律》翻译与解读

LLMs:《Scaling Laws for Precision精度感知的缩放定律》翻译与解读 导读:这篇论文研究了低精度训练和推理对大型语言模型(LLM)的影响。通过大量的实验,建立了精度感知型缩放定律,为低精度训练和推理提供了…

开源项目推荐——OpenDroneMap无人机影像数据处理

实景三维作为GIS最火的课题,最近在想做一套自己的三维构建工具,考察了几个开源项目,把自己的搜索过程用csdn记录下来,希望也能帮助到各位同仁。 OpenDroneMap(ODM)是一个开源项目,旨在处理无人…

Linux基础(十七)——Linux 帐号管理与 ACL 权限设置

Linux 帐号管理与 ACL 权限设置 1.UID与GID2./etc/passwd3./etc/shadow4./etc/group5./etc/gshadow6.有效群组和初始群组7.账号管理7.1 增加、修改、删除账户7.2 增加、修改、删除群组7.3 实例 8.ACL使用8.1 ACL定义8.2 查询与设置ACL 9.用户切换9.1 su9.2 .sudo 10. 使用者的特…