我在使用 electron-builder 构建 Node JS/电子应用程序时遇到了问题。运行时效果非常好
npm start
。但是,当我执行命令 build -w
(对于 Windows)时,它失败并显示 this log。
这是我的 JSON 文件:
{
"name": "Munshiiii",
"version": "1.0.0",
"description": "This is a short Description of the project",
"main": "index.js",
"scripts": {
"start": "electron .",
"dist": "build -w"
},
"author": "Hicham Dbiza",
"license": "ISC",
"devDependencies": {
"electron": "1.7.8",
"electron-prebuilt": "^1.4.13"
},
"dependencies": {
"asar": "^0.13.0",
"cradle": "^0.7.1",
"fs": "0.0.1-security",
"git": "^0.1.5",
"jquery": "^3.2.1",
"jsdom": "^11.3.0",
"loke-ipc": "^1.0.5",
"mongodb": "^2.2.33",
"node-couchdb": "^1.2.0",
"pouchdb": "^6.3.4",
"pouchdb-replication-stream": "^1.2.9",
"scanner.js": "^1.0.0"
},
"build":{
"appId": "com.hicham.dbiza.faizan",
"win":{
"target": "nsis",
"icon": "build/Munshiiii.ico"
}
}
}
对于这个项目我使用:
我已经使用了 electro-packager,它几乎可以很好地解决一个问题:,这意味着 js 文件内的所有链接(例如:fs.readFileSync('./assets/state','utf8'))都不会'不工作。 我还添加了一些本机 js 单击和按键监听器...这会是一个问题吗?
我的电子版本是1.7.8。
感谢您的帮助。
你安装了吗
electron-builder
?你的 package.json 中没有它。然后我建议使用 electron-builder
命令,如 作者推荐。
运行
npm install electron-builder --save-dev
并将 dist
命令更改为仅运行 electron-builder
。由于电子构建器针对当前运行的操作系统进行默认构建,因此无需发送 -w
标志。如果您仍然遇到问题,请尝试设置以下环境变量以获得更好的堆栈跟踪:
DEBUG=electron-builder,electron-builder:*
从评论中获取更多信息后进行编辑: 根据 GitHub 上的此问题,您的第一个问题似乎是由权限错误引起的,并通过以管理员身份运行解决了。
来自电子构建者自述文件:
Yarn is strongly recommended instead of npm.
yarn add electron-builder --dev
尝试删除您的
node_modules
文件夹并运行
npm install yarn -g && yarn && yarn pack
首先我使用以下行安装了电子构建器
npm install -g electron-builder
然后我在项目的根目录中创建了一个构建文件夹,其中包含带有应用程序徽标的 .ico 文件。然后我在 package.json 中编写了以下部分
"build": {
"appId": "your.app.id",
"productName": "Your final product name"
}
和
"scripts": {
"start": "electron .",
"pack": "build --dir"
}
这就是我所需要的一切。我在终端中打开根文件夹并执行
build -w
这创建了一个名为 dist 的文件夹,其中包含我的应用程序的解压版本以及该应用程序的安装程序。
强烈建议使用 Yarn 而不是 npm。
yarn add electron-builder --dev
如果您正在使用 Npm
只需执行简单的步骤终端即可:
1
npm install yarn -g
yarn
yarn pack