electron-builder 打包 serialport 成功

electron-builder 打包 serialport 成功

配置文件,package.json

{
  "name": "prj20_1",
  "version": "1.0.0",
  "description": "",
  "main": "main.js",
  "build": {
    "appId": "prj20_1",
    "win": {
      "target": [
        "nsis",
        "zip"
      ]
    }
  },
  "scripts": {
    "package": "electron-packager ./ prj20_1 --out ./dist --arch=x64 --electron-version=19.0.8 --overwrite",
    "fix": "cd ./node_modules/@serialport/bindings && node-gyp rebuild --target=17.4.0 --dist-url=https://atom.io/download/electron",
    "start": "chcp 65001 && electron .",
    "fix_start": "cd ./node_modules/@serialport/bindings && node-gyp rebuild --target=17.4.0 --dist-url=https://atom.io/download/electron && cd ../../../ && chcp 65001 && electron .",
    "build": "electron-builder --win --x64",
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "xzlAwin",
  "license": "MIT",
  "devDependencies": {
    "electron": "^17.4.10",
    "electron-builder": "^23.1.0",
    "electron-rebuild": "^3.2.8",
    "serialport": "^9.2.8"
  },
  "dependencies": {
    "serialport": "^9.2.8"
  }
}

打包失败

问题描述
npm run build
异常信息
> prj20_1@1.0.0 build
> electron-builder --win --x64

  • electron-builder  version=23.1.0 os=10.0.19042
  • loaded configuration  file=package.json ("build" field)
  • description is missed in the package.json  appPackageFile=M:\Workspaces\JavaScript workspace\electron\prj20_1\package.json
  • electron-rebuild not required if you use electron-builder, please consider to remove excess dependency from devDependencies

To ensure your native dependencies are always matched electron version, simply add script `"postinstall": "electron-builder install-app-deps" to your `package.json`
  • writing effective config  file=dist\builder-effective-config.yaml
  • rebuilding native dependencies  dependencies=@serialport/bindings@9.2.8 platform=win32 arch=x64
  • install prebuilt binary  name=@serialport/bindings version=9.2.8 platform=win32 arch=x64 napi=
  • build native dependency from sources  name=@serialport/bindings
                                          version=9.2.8
                                          platform=win32
                                          arch=x64
                                          napi=
                                          reason=prebuild-install failed with error (run with env DEBUG=electron-builder to get more information)
                                          error=prebuild-install info begin Prebuild-install version 7.1.1
    prebuild-install warn install prebuilt binaries enforced with --force!
    prebuild-install warn install prebuilt binaries may be out of date!
    prebuild-install info looking for local prebuild @ prebuilds\bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install info looking for cached prebuild @ F:\sdk\JavaScript\nodejs\X64\node_cache\_prebuilds\06321e-bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install http request GET https://github.com/serialport/node-serialport/releases/download/@serialport/bindings@9.2.8/bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install http 404 https://github.com/serialport/node-serialport/releases/download/@serialport/bindings@9.2.8/bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install warn install No prebuilt binaries found (target=17.4.10 runtime=electron arch=x64 libc= platform=win32)

  ⨯ cannot execute  cause=exit status 1
                    errorOut=npm ERR! code 1
    npm ERR! path M:\Workspaces\JavaScript workspace\electron\prj20_1\node_modules\_@serialport_bindings@9.2.8@@serialport\bindings
    npm ERR! command failed
    npm ERR! command C:\WINDOWS\system32\cmd.exe /d /s /c prebuild-install --tag-prefix @serialport/bindings@ || node-gyp rebuild
    npm ERR! prebuild-install warn install No prebuilt binaries found (target=17.4.10 runtime=electron arch=x64 libc= platform=win32)
    npm ERR! gyp info it worked if it ends with ok
    npm ERR! gyp info using node-gyp@8.2.0
    npm ERR! gyp info using node@16.13.0 | win32 | x64
    npm ERR! gyp info find Python using Python version 3.7.9 found at "F:\sdk\python\Python37\python3.exe"
    npm ERR! gyp info find VS using VS2019 (16.11.32630.194) found at:
    npm ERR! gyp info find VS "C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools"
    npm ERR! gyp info find VS run with --verbose for detailed information
    npm ERR! gyp info spawn F:\sdk\python\Python37\python3.exe
    npm ERR! gyp info spawn args [
    npm ERR! gyp info spawn args   'F:\\sdk\\JavaScript\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\gyp\\gyp_main.py',
    npm ERR! gyp info spawn args   'binding.gyp',
    npm ERR! gyp info spawn args   '-f',
    npm ERR! gyp info spawn args   'msvs',
    npm ERR! gyp info spawn args   '-I',
    npm ERR! gyp info spawn args   'M:\\Workspaces\\JavaScript workspace\\electron\\prj20_1\\node_modules\\_@serialport_bindings@9.2.8@@serialport\\bindings\\build\\config.gypi',
    npm ERR! gyp info spawn args   '-I',
    npm ERR! gyp info spawn args   'F:\\sdk\\JavaScript\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\addon.gypi',
    npm ERR! gyp info spawn args   '-I',
    npm ERR! gyp info spawn args   'C:\\Users\\xzlAwin\\.electron-gyp\\17.4.10\\include\\node\\common.gypi',
    npm ERR! gyp info spawn args   '-Dlibrary=shared_library',
    npm ERR! gyp info spawn args   '-Dvisibility=default',
    npm ERR! gyp info spawn args   '-Dnode_root_dir=C:\\Users\\xzlAwin\\.electron-gyp\\17.4.10',
    npm ERR! gyp info spawn args   '-Dnode_gyp_dir=F:\\sdk\\JavaScript\\nodejs\\node_modules\\npm\\node_modules\\node-gyp',
    npm ERR! gyp info spawn args   '-Dnode_lib_file=C:\\\\Users\\\\xzlAwin\\\\.electron-gyp\\\\17.4.10\\\\<(target_arch)\\\\node.lib',
    npm ERR! gyp info spawn args   '-Dmodule_root_dir=M:\\Workspaces\\JavaScript workspace\\electron\\prj20_1\\node_modules\\_@serialport_bindings@9.2.8@@serialport\\bindings',
    npm ERR! gyp info spawn args   '-Dnode_engine=v8',
    npm ERR! gyp info spawn args   '--depth=.',
    npm ERR! gyp info spawn args   '--no-parallel',
    npm ERR! gyp info spawn args   '--generator-output',
    npm ERR! gyp info spawn args   'M:\\Workspaces\\JavaScript workspace\\electron\\prj20_1\\node_modules\\_@serialport_bindings@9.2.8@@serialport\\bindings\\build',
    npm ERR! gyp info spawn args   '-Goutput_dir=.'
    npm ERR! gyp info spawn args ]
    npm ERR! gyp ERR! build error
    npm ERR! gyp ERR! stack Error: You must run `node-gyp configure` first!
    npm ERR! gyp ERR! stack     at ReadFileContext.<anonymous> (F:\sdk\JavaScript\nodejs\node_modules\npm\node_modules\node-gyp\lib\build.js:43:20)
    npm ERR! gyp ERR! stack     at ReadFileContext.callback (F:\sdk\JavaScript\nodejs\node_modules\npm\node_modules\graceful-fs\graceful-fs.js:123:16)
    npm ERR! gyp ERR! stack     at FSReqCallback.readFileAfterOpen [as oncomplete] (node:fs:314:13)
    npm ERR! gyp ERR! System Windows_NT 10.0.19042
    npm ERR! gyp ERR! command "F:\\sdk\\JavaScript\\nodejs\\node.exe" "F:\\sdk\\JavaScript\\nodejs\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js" "rebuild"
    npm ERR! gyp ERR! cwd M:\Workspaces\JavaScript workspace\electron\prj20_1\node_modules\_@serialport_bindings@9.2.8@@serialport\bindings
    npm ERR! gyp ERR! node -v v16.13.0
    npm ERR! gyp ERR! node-gyp -v v8.2.0
    npm ERR! gyp ERR! not ok

    npm ERR! A complete log of this run can be found in:
    npm ERR!     F:\sdk\JavaScript\nodejs\X64\node_cache\_logs\2022-07-19T15_55_47_127Z-debug.log

                    command='F:\sdk\JavaScript\nodejs\node.exe' 'F:\sdk\JavaScript\nodejs\node_modules\npm\bin\npm-cli.js' rebuild @serialport/bindings@9.2.8
                    workingDir=

打包成功

问题描述
cnpm run build
异常信息
> prj20_1@1.0.0 build
> electron-builder --win --x64

  • electron-builder  version=23.1.0 os=10.0.19042
  • loaded configuration  file=package.json ("build" field)
  • description is missed in the package.json  appPackageFile=M:\Workspaces\JavaScript workspace\electron\prj20_1\package.json
  • electron-rebuild not required if you use electron-builder, please consider to remove excess dependency from devDependencies

To ensure your native dependencies are always matched electron version, simply add script `"postinstall": "electron-builder install-app-deps" to your `package.json`
  • writing effective config  file=dist\builder-effective-config.yaml
  • rebuilding native dependencies  dependencies=@serialport/bindings@9.2.8 platform=win32 arch=x64
  • install prebuilt binary  name=@serialport/bindings version=9.2.8 platform=win32 arch=x64 napi=
  • build native dependency from sources  name=@serialport/bindings
                                          version=9.2.8
                                          platform=win32
                                          arch=x64
                                          napi=
                                          reason=prebuild-install failed with error (run with env DEBUG=electron-builder to get more information)
                                          error=prebuild-install info begin Prebuild-install version 7.1.1
    prebuild-install warn install prebuilt binaries enforced with --force!
    prebuild-install warn install prebuilt binaries may be out of date!
    prebuild-install info looking for local prebuild @ prebuilds\bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install info looking for cached prebuild @ C:\Users\xzlAwin\AppData\Local\npm-cache\_prebuilds\06321e-bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install http request GET https://github.com/serialport/node-serialport/releases/download/@serialport/bindings@9.2.8/bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install http 404 https://github.com/serialport/node-serialport/releases/download/@serialport/bindings@9.2.8/bindings-v9.2.8-electron-v101-win32-x64.tar.gz
    prebuild-install warn install No prebuilt binaries found (target=17.4.10 runtime=electron arch=x64 libc= platform=win32)

  • packaging       platform=win32 arch=x64 electron=17.4.10 appOutDir=dist\win-unpacked
  • default Electron icon is used  reason=application icon is not set
  • building        target=zip arch=x64 file=dist\prj20_1-1.0.0-win.zip
  • building        target=nsis file=dist\prj20_1 Setup 1.0.0.exe archs=x64 oneClick=true perMachine=false
  • building block map  blockMapFile=dist\prj20_1 Setup 1.0.0.exe.blockmap
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要使用electron-builder打包Linux桌面程序,你可以使用以下命令: ``` electron-builder --linux ``` 这个命令会使用electron-builder打包你的electron项目,并生成适用于Linux系统的安装包。\[2\]在运行这个命令之前,你需要确保你的项目已经完备,并且已经安装了electron-builder的依赖。你可以通过全局安装electron-builder来安装依赖,使用命令`npm install -g electron-builder`。\[3\]另外,你也可以在项目中安装electron-builder的依赖,使用命令`npm install electron-builder`。一旦依赖安装完成,你就可以使用上述命令来打包Linux桌面程序了。 #### 引用[.reference_title] - *1* *3* [electron-builder打包Electron桌面应用程序](https://blog.csdn.net/HTongi/article/details/113726323)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Electron打包桌面应用程序](https://blog.csdn.net/weixin_43561201/article/details/124616088)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值