问题标签 [electron-rebuild]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
70 浏览

npm - npm 重建,电子重建不使用特殊参数

我有一个电子/反应应用程序正在运行。所以在我安装完所有的包之后我必须执行electron-rebuild所以没有版本问题。

preinstall我在脚本中安装了一个包:npm install better-sqlite3 --build-from-source --sqlite3=my sqlite amalgamation folder

现在的问题是,electron-rebuild/npm rebuild我的自定义合并只安装了 better-sqlite3 而不是 better-sqlite3。

这使我无法使用它,因为我需要自定义版本的 sqlite。

有谁知道如何解决这个问题,如何让 electron-rebuild/npm rebuild 安装带有额外参数的包?

0 投票
2 回答
2886 浏览

node.js - 电子 NODE_MODULE_VERSION 错误和重建的串行端口无法修复

操作系统:win 10 Node.js:v12.18.3 电子:v10.1.1

从 js 程序打印版本:process.versions.node 12.16.3 process.versions.modules 82

  1. 安装串口: npm install serialport

  2. npm 启动并得到错误:

错误:模块 '\?\D:\node\Tester\node_modules@serialport\bindings\build\Release\bindings.node' 是使用 NODE_MODULE_VERSION 72 针对不同的 Node.js 版本编译的。此版本的 Node.js 需要 NODE_MODULE_VERSION 82. 请尝试重新编译或重新安装模块(例如,使用npm rebuildnpm install)。

  1. npm install --save-dev electron-rebuild .\node_modules.bin\electron-rebuild

重建完成

  1. npm start 并再次出现错误。

错误:模块 '\?\D:\node\Tester\node_modules@serialport\bindings\build\Release\bindings.node' 是使用 NODE_MODULE_VERSION 72 针对不同的 Node.js 版本编译的。此版本的 Node.js 需要 NODE_MODULE_VERSION 82. 请尝试重新编译或重新安装模块(例如,使用npm rebuildnpm install)。

需要注意的是,v12.18.3 和 12.16.3 都有 NODE_MODULE_VERSION 72。没有版本得到 82。我不知道“82”来自哪里。我该如何解决?谢谢。

0 投票
1 回答
1489 浏览

node.js - 电子生成器和电子重建有什么区别?

我试图找出用于编译本机模块的电子生成器电子重建之间的区别。Afaik 有这两个选项来编译我的本机模块依赖项:

电子生成器

“本机应用程序依赖项编译(包括 Yarn 支持)。”

还有 电子重建

这允许您在 Electron 应用程序中使用本机 Node.js 模块,而您的系统版本的 Node.js 不完全匹配(这通常不是这种情况,有时甚至是不可能的)。

两者都导致我的依赖项的工作二进制文件。我知道electron-builder用于更多,但是electron-rebuild如果这也可以通过它来完成,为什么还存在electron-builder呢?谢谢!

0 投票
0 回答
586 浏览

javascript - Node.js 和 Electron ABI 版本

我正在尝试libxmljs2在(1)一个简单的 node.js 应用程序和(2)一个 Electron 应用程序上使用。

所以我使用的版本如下:

所以我的问题是.. 因为我为 node.js 应用程序和电子应用程序使用了一个共享的 node_module (这是我们的架构,所以我不能偏离它):

  • 当我重建libxmljs2npm rebuild- 它适用于 node.js 但不适用于电子应用程序
  • 当我重建时,electron-rebuild --module-dir libxmljs2它适用于电子应用程序,但不适用于 node.js

所以我说共享 node_modules 是这样的:

node-app并与electron-app分享node_modules。两者node-appelectron-app没有自己的 node_modules 文件夹。

帮助任何人?

0 投票
0 回答
340 浏览

node.js - 选举:ffi_bindings.node 不是有效的 Win32 应用程序

在使用 electron-builder 构建我的 Windows 应用程序后,ffi_napi 显然已正确重建和打包:

重建原生依赖:ffi_napi@3.1.0

但是当我尝试执行 Windows 应用程序时,我得到:

ffi_bindings.node 不是有效的 Win32 应用程序

我在模块上遇到了类似的问题canvas,但我使用这个特定的代码解决了这个问题,该代码将修补节点 abi 的版本以使用来自电子的版本。但是,自从我添加ffi_napi后,无论是否使用此 hack,该应用程序现在都无法正常工作。

0 投票
1 回答
1143 浏览

reactjs - 吉普错了!同时用电子重建重建

自过去 2 天以来,我一直遇到此错误。任何帮助将不胜感激。我正在尝试重建应用程序以使用serialport npm 包。节点版本:14.16.1。

我想与带有反应的电子一起使用包串行端口。但是当我运行命令 .\node_modules.bin\electron-rebuild.cmd 时,我收到以下错误:

顺便说一句,我已经手动和使用 npm 命令安装了 microsoft 构建工具:npm install --global windows-build-tools。这是我通过.exe手动安装的:

在此处输入图像描述

一直在使用这个https://github.com/bradtraversy/simple-electron-react样板。

0 投票
0 回答
146 浏览

node.js - 如何为 Electron 应用程序手动重建本机节点模块?

我正在我的项目中使用包node-active-window

代码捕获

我将它安装为依赖项npm install --save node-active-window

Package.json捕获

在调试模式下
这个包很适合我npm start,它正确地返回活动窗口。

调试模式结果捕获

在生产模式下

建筑捕获

使用electron-builder 构建 npm run dist应用程序并运行可执行应用程序后(导出完成后),该模块无法正常工作,它返回错误

-File 参数的参数“C:\Program Files\Test node-active-window\resources\app.asar\node_modules\node-active-window\scripts\windows.ps1”不存在。提供现有“.ps1”文件的路径作为 -File 参数的参数。

生产模式结果捕获

注意:我尝试使用其他模块,如active-winactive-window,但它们与我的项目不兼容。

也许问题不像我想的那样出在大楼里......有人有解决这个问题的想法吗?请告诉我?

0 投票
3 回答
994 浏览

javascript - 如何在电子中重建 epoll 包?

我尝试重建一个电子应用程序,但我收到有关 epoll 安装的错误。

我正在使用覆盆子,我也更新了它。但它没有用。这些是安装的依赖项。

我用 package-lock.json 删除了 node_modules 并再次安装了所有东西。我用 apt-get upgrade 更新了覆盆子。我不知道我该如何解决这个问题。你有什么想法?

0 投票
1 回答
43 浏览

node.js - 电子重建没有使用正确的 NODE_MODULE_VERSION

我正在尝试使用版本 13.4.0 和 Node 版本 v14.16.0 的电子安装。但是,当我在我的文件上运行时,它为 83(由节点 14 使用)而不是所需的 89(由电子使用)electron-rebuild构建。NODE_MODULE_VERSION以下是一些相关文件:

binding.gyp

Dockerfile

package.json

我应该如何解决这个问题,以便我可以针对模块版本 89 正确构建我的模块?

0 投票
0 回答
42 浏览

node.js - 找不到绑定文件:Raspberry Pi 4 上的 Serialport + Electron

我正在尝试在 kiosk 模式下使用树莓派上的 nodejs 串行端口模块运行电子应用程序。不幸的是,我的电子应用程序没有开始出现错误:(Could not locate the bindings file下面的完整错误)。

我假设这与电子重建在尝试重新编译模块的二进制文件时找不到串行端口模块的绑定文件有关。当我尝试运行时,electron-rebuild -f -w .我得到了同样的could not locate the bindings file错误。有谁知道我怎样才能开始我的程序?