使用packer 打包nodegui 应用
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
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/#/
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
2018-09-08 apache airflow docker 运行简单试用