在电子应用程序中使用Dbus软件包构建过程

问题描述

当我需要DBus软件包中的dbus时,我会遇到这个问题

const { app,BrowserWindow } = require("electron");
const DBus = require('dbus');

app.whenReady().then(() => {
    var win = new BrowserWindow({ width: 600,height: 500 });
    win.loadFile('index.html');

    win.webContents.openDevTools();
});

因此,当我执行此代码时,我会收到此错误:

> electron script.js

App threw an error during load
Error: Module did not self-register: '/home/bislem/projects/test/electron/node_modules/dbus/build/Release/dbus.node'.
    at process.func [as dlopen] (electron/js2c/asar.js:140:31)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1196:18)
    at Object.func [as .node] (electron/js2c/asar.js:140:31)
    at Module.load (internal/modules/cjs/loader.js:981:32)
    at Module._load (internal/modules/cjs/loader.js:881:14)
    at Function.Module._load (electron/js2c/asar.js:769:28)
    at Module.require (internal/modules/cjs/loader.js:1023:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (/home/bislem/projects/test/electron/node_modules/dbus/lib/dbus.js:3:13)
    at Module._compile (internal/modules/cjs/loader.js:1145:30)
A JavaScript error occurred in the main process
Uncaught Exception:
Error: Module did not self-register: '/home/bislem/projects/test/electron/node_modules/dbus/build/Release/dbus.node'.
    at process.func [as dlopen] (electron/js2c/asar.js:140:31)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1196:18)
    at Object.func [as .node] (electron/js2c/asar.js:140:31)
    at Module.load (internal/modules/cjs/loader.js:981:32)
    at Module._load (internal/modules/cjs/loader.js:881:14)
    at Function.Module._load (electron/js2c/asar.js:769:28)
    at Module.require (internal/modules/cjs/loader.js:1023:19)
    at require (internal/modules/cjs/helpers.js:77:18)
    at Object.<anonymous> (/home/bislem/projects/test/electron/node_modules/dbus/lib/dbus.js:3:13)
    at Module._compile (internal/modules/cjs/loader.js:1145:30)

我搜索了此错误,并尝试了一些解决方案,但没有一个起作用(npm rebuildnpm update,先删除node_modules文件夹,然后再npm install,然后使用不同版本的节点,使用nvm命令),但是在自己运行每个软件包时(使用开始脚本electron运行electron .,并使用dbus运行node script.js ),它们可以正常工作。

,并且在安装dbus软件包时遇到了这个问题: console when installing dbusconsole when installing dbus part 2

我的package.json文件:

{
    "name": "electrontest","version": "1.0.0","description": "","main": "script.js","scripts": {
        "start": "electron script.js","test": "echo \"Error: no test specified\" && exit 1"
    },"keywords": [],"author": "","license": "ISC","dependencies": {
        "bootstrap": "^4.5.3","dbus": "^1.0.7","electron": "^10.1.5"
    }
}

所以我的问题是构建/运行此类代码的正确方法是什么? ||如何并排使用这两个软件包?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)