packer 是nodegui 团队提供的专门用来打包noodegui 应用程序的工具

安装packer

  • yarn 方式安装
yarn add @nodegui/packer
  • 效果
[fsevents] Success: "/Users/dalong/Documents/GitHub/nodegui-starter/node_modules/fsevents/lib/binding/Release/node-v72-darwin-x64/fse.node" is installed via remote
> @nodegui/nodegui@0.1.8 install /Users/dalong/Documents/GitHub/nodegui-starter/node_modules/@nodegui/nodegui
> npm -v
6.9.0
> @nodegui/qode@1.0.4 postinstall /Users/dalong/Documents/GitHub/nodegui-starter/node_modules/@nodegui/qode
> node install.js
Local Qode 1.0.4 archive doesnt exists... Copying Qode from cache...
Extracting binaries...
> @nodegui/nodegui@0.1.8 postinstall /Users/dalong/Documents/GitHub/nodegui-starter/node_modules/@nodegui/nodegui
> npm run build:addon
> @nodegui/nodegui@0.1.8 build:addon /Users/dalong/Documents/GitHub/nodegui-starter/node_modules/@nodegui/nodegui
> node-gyp -j 8 configure build
  CC(target) Release/obj.target/nothing/../../node-addon-api/src/nothing.o
  TOUCH 8d54a0613d50a84adae49a5312f848b52b1b3ed9.intermediate
  ACTION binding_gyp_qtnode_target_symlink_qt_headers 8d54a0613d50a84adae49a5312f848b52b1b3ed9.intermediate
  LIBTOOL-STATIC Release/nothing.a
  CXX(target) Release/obj.target/qtnode/src/cpp/main.o
  CXX(target) Release/obj.target/qtnode/src/cpp/Extras/Utils/nutils.o
  CXX(target) Release/obj.target/qtnode/src/cpp/core/FlexLayout/flexlayout.o
  CXX(target) Release/obj.target/qtnode/src/cpp/core/FlexLayout/flexitem.o
  CXX(target) Release/obj.target/qtnode/src/cpp/core/YogaWidget/nodestyle.o
  CXX(target) Release/obj.target/qtnode/src/cpp/core/Events/eventsmap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/core/Events/eventwidget.o
  CXX(target) Release/obj.target/qtnode/src/cpp/core/YogaWidget/yogawidget.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtGui/QApplication/qapplication_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtGui/QClipboard/qclipboard_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtGui/QEvent/QKeyEvent/qkeyevent_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtGui/QPixmap/qpixmap_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtGui/QIcon/qicon_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtGui/QCursor/qcursor_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/core/FlexLayout/flexlayout_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QWidget/qwidget_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QGridLayout/qgridlayout_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QDial/qdial_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QLabel/qlabel_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QLayout/qlayout_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QMainWindow/qmainwindow_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QPushButton/qpushbutton_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QSpinBox/qspinbox_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QCheckBox/qcheckbox_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QProgressBar/qprogressbar_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QRadioButton/qradiobutton_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QLineEdit/qlineedit_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QPlainTextEdit/qplaintextedit_wrap.o
  CXX(target) Release/obj.target/qtnode/src/cpp/QtWidgets/QScrollArea/qscrollarea_wrap.o
....
 

打包应用

具体应用可以参考https://www.cnblogs.com/rongfengliang/p/11487743.html

  • 初始化应用
npx nodegui-packer --init dalongdemo

效果:

  • 打包应用
npx nodegui-packer --pack ./dist

效果

  • 运行应用

说明

如果大家对于桌面性能要求比较高,同时还希望使用web 的方式开发跨平台的桌面应用nodegui 是一个不错的选择

参考资料

https://github.com/nodegui/packer
https://github.com/nodegui/nodegui.git
https://nodegui.github.io/nodegui/#/

使用packer 打包nodegui 应用的更多相关文章

  1. BoxedApp Packer 将您的原始应用“打包”成单个完全的可执行二进制文件

    及时应对移动化趋势 在没有安装到本地硬盘驱动的情况下,使用闪存卡.网络文件夹或者可移动磁盘远程启动应用程序通常是一件令人头疼的事,你会发现,应用程序会突然会丢失文件.路径错误或者远程注册表故障等一系列 ...

  2. unity 查看打包资源占用

    想要压缩包大小,首先得知道打包出来的各个资源的大小,明确知道哪些资源占用大,可以通过如下操作打开Editor.log(可能需要先输出一遍安卓包) 1.在Unity Console界面右上角点开Open ...

  3. Unity4.6 UGUI 图片打包设置(小图打包成图集 SpritePacker)

    版权声明:本文转自http://blog.csdn.net/huutu 转载请带上 http://www.liveslives.com/ 在学习UGUI的过程中,一直使用小图也就是散图,一个按钮一个图 ...

  4. Unity3d的Sprite Packer用法介绍

    我们用来做sprite 的图片,通常会留有很多空白的地方,我们在画完了sprite之后,这些地方很可能就没有什么作用了.如果想避免这些资源上的浪费,我们可以把各个sprite做成图集,把图片上的空间尽 ...

  5. PetGenie

    大概六.七年前当我还在学 Asphyre 的时候,有看过一个以之编写的类似对对碰的“宠物对对碰”小游戏,虽然很简单,但我当时还是小小的沉溺过数个小时.而不久前,在闲逛论坛时无意看到了个以 FireMo ...

  6. web开发必须知道的javascripat工具

    1,JavaScript compressor and comparison tool 有许多工具可以帮助你压缩JavaScript代码,但是这个过程比较耗时,并且,对于某个特定的场景来说,很难分析出 ...

  7. Unity3D NGUI,uGUI总结

    跪求官方UI系统(2014年11月底已出,用原生的比用NGUI放心) uGUI注意点 1.要防止多个canvas叠加点击穿透,canvas里面的graphics raycaster调整到恰当选项 2. ...

  8. java script 的工具

    1.Jsbeautifier 这个微型的美化器可以重新调整 bookmarklet 和丑陋的JavaScript的格式和缩进,也可以对使用流行的 Dean Edward 的 Packer 打包的脚本进 ...

  9. COSMOSBOX手遊制作手册(Word备份)

    20140712版 版本号 Version 日期 Date 作者 Author 变更主要原因描述 Brief Description 1.0 2014-4-26 陈霈霖 初稿 2.0 1. 前言 本手 ...

随机推荐

  1. map集合转set集合

    import java.util.*; //Map集合的迭代器输出,先将Map集合变为Set集合,再使用Iterator迭代器 public class Java_collection { publi ...

  2. vs2017添加引用提示“找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例”解决方案

    vs2017添加引用提示“找不到 Microsoft.VisualStudio.Shell.Interop.IVsReferenceManager 服务的实例” 不知道是不是安装时候的问题?解决方法: ...

  3. SpringMVC+EasyUI实现页面左侧导航菜单

    1. 效果图展示 2. 工程目录结构 注意: webapp下的resources目录放置easyui和js(jQuery文件是另外的)                    3. 代码 index.j ...

  4. Object中defineProperty数据描述

    Object.defineProperty是对对象中的属性进行数据描述的 使用语法: Object.defineProperty(obj,prop,descriptor) 使用示例: var data ...

  5. java 判断虚拟网卡物理网卡

    读取注册表方式,jregistrykey.jar与jregistrykey.dll.通过“characteristics”值确定虚拟网卡还是物理网卡.该值在注册表的位置HKEY_LOCAL_MACHI ...

  6. 升级.net core 3.x 后mvc项目调试状态编辑view代码不能实时预览

    https://stackoverflow.com/a/58126955 简单来说 需要在nuget上安装Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilati ...

  7. input限制输入

    input 只能输入数字.字母.汉字等   1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace( ...

  8. rf中的条件判断与循环

    条件判断 run keyword if condition name *args ... ELSE IF conditon name *args ...ELSE name *args conditio ...

  9. z = z*z + c的分型图如何画

    使用python的图形库. 环境:conda+jupyter notebook 代码如下: import numpy as np from PIL import Image from numba im ...

  10. Odoo日历视图详解

    转载请注明原文地址:https://www.cnblogs.com/ygj0930/p/10826148.html 一:日历视图定义 根元素为<calendar>. 主要的属性有:    ...