跳转至

高级安装说明

要安装预构建的 Electron 二进制文件,请使用 npm。 推荐的方法是在你的应用中以开发依赖项的形式安装 Electron:

npm install electron --save-dev

有关如何在应用中管理 Electron 版本的信息,请参阅 Electron 版本说明文档。

二进制下载步骤

在底层,Electron 的 JavaScript API 会绑定到一个包含其实现代码的二进制文件。该二进制文件对任何 Electron 应用的功能都至关重要,并且默认情况下,在你第一次以开发模式运行 Electron(即 electron .)时会被下载。

如果你希望改为按需安装该二进制文件,可以运行 electron 包中包含的 install-electron bin 脚本:

npx install-electron --no

安装预发布版本

Electron 也会通过 npm 分发未来主要版本的实验性发布。

每日构建包含来自 main 分支的最新更改:

npm install electron-nightly --save-dev

Alpha 和 beta 构建包含计划用于下一个主要版本的更改:

npm install electron@alpha --save-dev
npm install electron@beta --save-dev

[!TIP] 有关可用 Electron 发布的更多信息,请参阅 发布状态仪表板。

临时运行 Electron

如果你临时需要运行 Electron,并且不想在本地项目中使用 npm install,也可以使用随 npm 捆绑的 npx 命令运行器临时运行 Electron:

npx electron .

上述命令会使用 Electron 运行当前工作目录。请注意,你应用中的任何依赖项都不会被安装。

自定义

如果你想更改要下载的架构(例如在 arm64 机器上下载 x64),可以设置 ELECTRON_INSTALL_ARCH 环境变量:

# Inside an npm script or with npx
ELECTRON_INSTALL_ARCH=x64 electron .

支持的架构是 Node.js process.arch 值的一个子集,包括:

  • x64(Intel Mac 和 64 位 Windows)
  • arm64(Apple silicon、Windows on ARM、ARM64 Linux)

除了更改架构之外,你还可以使用 --platform 标志指定平台(例如 win32、linux 等):

# Inside an npm script or with npx
ELECTRON_INSTALL_PLATFORM=mas electron .

支持的平台是类似 Node 的 平台字符串:

[!TIP] 要查看特定发布的所有可用平台/架构组合,请参阅 Electron 的 GitHub Releases 上的构建产物。

代理

如果你需要使用 HTTP 代理,需要将 ELECTRON_GET_USE_PROXY 变量设置为任意值,并根据宿主系统的 Node 版本设置其他环境变量:

自定义镜像和缓存

在安装过程中,electron 模块会调用 @electron/get 来下载适用于你平台的 Electron 预构建二进制文件。它会通过访问 GitHub 的发布下载页面(https://github.com/electron/electron/releases/tag/v$VERSION,其中 $VERSION 是 Electron 的精确版本)来完成此操作。

如果你无法访问 GitHub,或者需要提供自定义构建,可以通过提供镜像或现有缓存目录来实现。

镜像

你可以使用环境变量来覆盖基础 URL、查找 Electron 二进制文件的路径以及二进制文件名。@electron/get 使用的 URL 由以下内容组成:

```js @ts-nocheck url = ELECTRON_MIRROR + ELECTRON_CUSTOM_DIR + '/' + ELECTRON_CUSTOM_FILENAME

例如,要使用中国 CDN 镜像:

```shell
ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"

默认情况下,ELECTRON_CUSTOM_DIR 设置为 v$VERSION。要更改格式,请使用 {{ version }} 占位符。例如,version-{{ version }} 会解析为 version-5.0.0,{{ version }} 会解析为 5.0.0,而 v{{ version }} 等同于默认值。更具体的例子是,要使用中国非 CDN 镜像:

ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"
ELECTRON_CUSTOM_DIR="{{ version }}"

上述配置将从类似 https://npmmirror.com/mirrors/electron/8.0.0/electron-v8.0.0-linux-x64.zip 的 URL 下载。

如果你的镜像提供的构建产物与官方 Electron 发布具有不同的校验和,你可能需要直接设置 electron_use_remote_checksums=1,或在 .npmrc 文件中配置它,以强制 Electron 使用远程 SHASUMS256.txt 文件来验证校验和,而不是使用内嵌校验和。

缓存

或者,你可以覆盖本地缓存。@electron/get 会将下载的二进制文件缓存到本地目录,以减轻网络压力。你可以使用该缓存文件夹来提供 Electron 的自定义构建,或完全避免访问网络。

  • Linux:$XDG_CACHE_HOME 或 ~/.cache/electron/
  • macOS:~/Library/Caches/electron/
  • Windows:$LOCALAPPDATA/electron/Cache 或 ~/AppData/Local/electron/Cache/

在已使用旧版本 Electron 的环境中,你可能还会在 ~/.electron 中找到缓存。

你还可以通过提供 electron_config_cache 环境变量来覆盖本地缓存位置。

缓存包含该版本的官方 zip 文件以及校验和,并以 [checksum]/[filename] 的形式存储。典型的缓存可能如下所示:

├── a91b089b5dc5b1279966511344b805ec84869b6cd60af44f800b363bba25b915
│   └── electron-v15.3.1-darwin-x64.zip

故障排除

在运行 npm install electron 时,一些用户偶尔会遇到安装错误。

在几乎所有情况下,这些错误都是网络问题导致的,而不是 electron npm 包本身的问题。诸如 ELIFECYCLE、EAI_AGAIN、ECONNRESET 和 ETIMEDOUT 之类的错误都是此类网络问题的表现。最佳解决方法是尝试切换网络,或稍等片刻后再次尝试安装。

如果通过 npm 安装失败,你也可以尝试直接从 electron/electron/releases 下载 Electron。

如果安装时出现 EACCESS 错误,你可能需要修复 npm 权限。

如果上述错误仍然存在,可能需要将 unsafe-perm 标志设置为 true:

sudo npm install electron --unsafe-perm=true

在较慢的网络下,建议使用 --verbose 标志以显示下载进度:

npm install --verbose electron

如果需要强制重新下载资源文件和 SHASUM 文件,请将 force_no_cache 环境变量设置为 true。

本页原文 Markdown:在 AtomGit 查看·内容源自开源项目 el/electron