我直接进入wsl debian 跑 npm run make 结果指出来 squirrel 的包,为啥子捏。
不应该是deb包么
我尝试了
有在 debian linux 中重新安装依赖
npm i
然后运行
npm run make -- --platform linux
结果报错了
› Cannot make for linux and target deb: the maker declared that it cannot run on win32.
electron 的编译会根据不同的系统进行编译
如果在wsl中进行编译,需要重新在 wsl 安装 nodejs 以及具体依赖。
首先在 wsl 中安装 nodejs( 建议使用nvm 或者 fnm
curl -fsSL https://fnm.vercel.app/install | bashsource /root/.bashrcfnm intall 20 fnm use 20
然后重新安装依赖
npm i
安装成功后编译可能还是失败,因为 缺少 dpkg 和 fakeroot 安装他
apt update && apt upgrade && apt install fakeroot dpkg -y
我使用vite 所以还需要安装 @rollup/rollup-linux-x64-gnu
npm i @rollup/rollup-linux-x64-gnu -D
然后重新运行 make 命令
npm run make
最后终于打包成功了。
在 WSL (Windows Subsystem for Linux) 中使用 Electron Forge 为 Electron 项目打包 .deb
文件时,如果你遇到了与 Squirrel 相关的错误或输出,这可能是因为 Electron Forge 试图为 Windows 平台打包应用程序,而不是 Debian 或其他 Linux 发行版。
Electron Forge 支持为多种平台打包应用程序,但你需要确保你正确配置了目标平台。默认情况下,如果你的开发环境在 Windows 上,Electron Forge 可能会尝试为 Windows 平台打包(即使用 Squirrel)。
为了在 WSL Debian 中为 Electron 项目打包 .deb
文件,你需要确保以下几点:
设置目标平台:
确保你的 package.json
文件中正确设置了 electronForgeConfig
下的 makers
配置,以包含 Debian 的打包器。例如:
"electronForgeConfig": { "makers": [ { "name": "@electron-forge/maker-deb", "config": { // 这里可以添加针对 deb 打包的特定配置 } } // 其他可能的 makers 如 squirrel.windows 等 ]}
安装必要的依赖:
确保你已经安装了 @electron-forge/maker-deb
和其他必要的依赖。你可以通过运行以下命令来安装它们:
npm install --save-dev @electron-forge/maker-deb
运行打包命令:
在配置好目标平台并安装了必要的依赖之后,你可以运行打包命令:
npm run make
或者指定只打包 .deb
:
npx electron-forge make --targets=deb
使用 --targets=deb
参数可以确保 Electron Forge 只为 Debian 或 Ubuntu 打包 .deb
文件。
请注意,在 WSL 中打包 Linux 发行版的 .deb
文件可能受到 WSL 功能的限制,因为 WSL 主要是为了与 Windows 应用程序的兼容性而设计的。在某些情况下,直接在 Linux 环境中进行打包可能更为可靠和方便。如果你经常需要为 Linux 发行版打包 Electron 应用,考虑使用原生 Linux 环境可能是个好主意。
请问下,在electron项目中,数据库路径是使用哪个呢? 在开发Electorn的时候,我们有开发环境和生产环境, 1、请问下,是否需要这里进行一下区分加载? 比如: 判定当前环境是开发环境,就加载/src/main/db/下的数据库文件; 判定当前环境是生产环境,就按照上面截图的方式加载数据库文件?(不存在还需要创建)
vue3+vite+electron 打包报错
electron打包vue项目为macOS应用必须使用mac电脑吗?在windows上是否可以?
在使用electron 测试demo的时候, 想要引入electron的app, 但是在打印的时候,却是undefined. npx tsx test/test.ts 执行打印: test/test.ts 1、上面引入的join方法都可以打印。为何electron的app是undefined呢? 2、还是说electron的内置只能在src/main/ 主进程目录下执行呢? 3、如果只能在主进程目
如图,在 monorepo 中使用了 tailwindcss 后作为一个案例打包,并且按需生成了 dist/style.css 文件,但在演示项目中引入 css 文件时并没有生效也没有报错。 而后在演示项目也引用 tailwindcss 才得以生效,但显然这并不符合需求。 希望得到的结果是演示项目不需要使用 tailwindcss 就能让组件库的样式生效。 问题应该如何解决? 是否是我代码或配置有
vue3、vite项目本地运行正常,打包报一堆错,应该是type-check的报错,应该怎么解决? 无