我正在尝试在 linux ENV 中构建我的 Electron 串行应用程序,首先我用串行端口重建了 Electron electron-rebuild -f -w serialport
一切正常,似乎重建成功执行
...
⠸ Building module: bindings, Completed: 0 CXX(target) Release/obj.target/bindings/src/serialport_linux.o
⠼ Building module: bindings, Completed: 0 SOLINK_MODULE(target) Release/obj.target/bindings.node
⠧ Building module: bindings, Completed: 0 COPY Release/bindings.node
make: Leaving directory '/home/party/code/geeCom/node_modules/@serialport/bindings/build'
但是当我通过 webpack 构建我的应用程序并尝试启动它时,我得到了 Could not locate the bindings file. Tried
问题。这是整个错误痕迹
npm start
> gee-com@0.0.1 start /home/party/code/geeCom
> electron ./app/main.js
App threw an error during load
Error: Could not locate the bindings file. Tried:
→ /home/party/code/geeCom/build/bindings.node
→ /home/party/code/geeCom/build/Debug/bindings.node
→ /home/party/code/geeCom/build/Release/bindings.node
→ /home/party/code/geeCom/out/Debug/bindings.node
→ /home/party/code/geeCom/Debug/bindings.node
→ /home/party/code/geeCom/out/Release/bindings.node
→ /home/party/code/geeCom/Release/bindings.node
→ /home/party/code/geeCom/build/default/bindings.node
→ /home/party/code/geeCom/compiled/12.18.3/linux/x64/bindings.node
→ /home/party/code/geeCom/addon-build/release/install-root/bindings.node
→ /home/party/code/geeCom/addon-build/debug/install-root/bindings.node
→ /home/party/code/geeCom/addon-build/default/install-root/bindings.node
→ /home/party/code/geeCom/lib/binding/node-v85-linux-x64/bindings.node
at bindings (/home/party/code/geeCom/app/main.js:2309:9)
at Object../node_modules/@serialport/bindings/lib/linux.js (/home/party/code/geeCom/app/main.js:544:91)
at __webpack_require__ (/home/party/code/geeCom/app/main.js:3713:41)
at Object../node_modules/@serialport/bindings/lib/index.js (/home/party/code/geeCom/app/main.js:385:22)
at __webpack_require__ (/home/party/code/geeCom/app/main.js:3713:41)
at Object../node_modules/serialport/lib/index.js (/home/party/code/geeCom/app/main.js:3507:17)
at __webpack_require__ (/home/party/code/geeCom/app/main.js:3713:41)
at /home/party/code/geeCom/app/main.js:3731:20
at /home/party/code/geeCom/app/main.js:3767:3
at Object.<anonymous> (/home/party/code/geeCom/app/main.js:3769:12)
A JavaScript error occurred in the main process
Uncaught Exception:
Error: Could not locate the bindings file. Tried:
→ /home/party/code/geeCom/build/bindings.node
→ /home/party/code/geeCom/build/Debug/bindings.node
→ /home/party/code/geeCom/build/Release/bindings.node
→ /home/party/code/geeCom/out/Debug/bindings.node
→ /home/party/code/geeCom/Debug/bindings.node
→ /home/party/code/geeCom/out/Release/bindings.node
→ /home/party/code/geeCom/Release/bindings.node
→ /home/party/code/geeCom/build/default/bindings.node
→ /home/party/code/geeCom/compiled/12.18.3/linux/x64/bindings.node
→ /home/party/code/geeCom/addon-build/release/install-root/bindings.node
→ /home/party/code/geeCom/addon-build/debug/install-root/bindings.node
→ /home/party/code/geeCom/addon-build/default/install-root/bindings.node
→ /home/party/code/geeCom/lib/binding/node-v85-linux-x64/bindings.node
at bindings (/home/party/code/geeCom/app/main.js:2309:9)
at Object../node_modules/@serialport/bindings/lib/linux.js (/home/party/code/geeCom/app/main.js:544:91)
at __webpack_require__ (/home/party/code/geeCom/app/main.js:3713:41)
at Object../node_modules/@serialport/bindings/lib/index.js (/home/party/code/geeCom/app/main.js:385:22)
at __webpack_require__ (/home/party/code/geeCom/app/main.js:3713:41)
at Object../node_modules/serialport/lib/index.js (/home/party/code/geeCom/app/main.js:3507:17)
at __webpack_require__ (/home/party/code/geeCom/app/main.js:3713:41)
at /home/party/code/geeCom/app/main.js:3731:20
at /home/party/code/geeCom/app/main.js:3767:3
at Object.<anonymous> (/home/party/code/geeCom/app/main.js:3769:12)
结果似乎 serailport pkg 仍然不在 Electron 环境中?有人有同样的问题吗?你可以和我分享任何修复它的想法吗?
最佳答案
因为我注意到 Electron 尝试在这些路径中查找绑定(bind)文件,所以我复制了构建 bindings.node
至geeCom/build/
,就可以启动了。但似乎不是一个完美的方法..
关于node.js - 找不到绑定(bind)文件。在 Electron 环境中使用串行端口时尝试过,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66651684/