首页 > 解决方案 > 无法在电子锻造应用程序中使用本机节点模块

问题描述

我正在尝试在使用webpack模板通过电子锻造创建的电子应用程序中使用 pkcs11js。

但我得到了错误

Error: C:\ws-p\electron-test\.webpack\main\349a63bd9833f80e7879a5bbfb2a4af2.node is not a valid Win32 application.
←[90m    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1122:18)←[39m
←[90m    at Module.load (internal/modules/cjs/loader.js:928:32)←[39m
←[90m    at Function.Module._load (internal/modules/cjs/loader.js:769:14)←[39m
←[90m    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)←[39m
←[90m    at internal/main/run_main_module.js:17:47←[39m

周围有很多问题,但到目前为止,没有一个提供的解决方案/答案对我有用。

这些都没有解决:

环境

Windows 10 Pro
Node 14.16.1
electron: 13.1.0
electron-rebuild: 2.3.5
electron-forge: 6.0.0-beta.57
pkcs11js: 1.2.4

标签: node.jselectronelectron-forge

解决方案


网络上的解决方案都不适合我。有效的方法是将electron-gyp输出文件夹定义为 home 之前electron-rebuild或在安装依赖项之后/之前使用电子伪造。

在终端中:

视窗:

set HOME=C:\Users\YourUser\.electron-gyp
npm i
npm run start <# which resolves to electron-forge start #> 

Unix:

$ export HOME=~/.electron-gyp
$ npm i
$ npm run start # which resolves to  electron-forge start

我希望它对某人有帮助


推荐阅读