Java的gui开发-Swing如何一键打包exe、dmg等

java的gui开发其实很方便,性能也不错,知名的idea开发工具也是java-swing开发,只是用的人少,看了我的例子3分钟就能学会,分分钟写桌面端,下面教你如何一键打包windows端exe

Java-Swing-Template

  • java的gui开发快速模版,支持jdk14+,maven构建,支持一键打包为exe、dmg等
  • 当前使用的jdk17,理论上jdk14+都支持
  • 采用模块化,支持一键打包生成很小的exe(目前20M左右)
  • 采用了idea开发工具一样的主题,支持明亮和暗黑(再也不用担心java的swing丑啦)
  • maven构建

  • Gitee地址

打包

  • 绿色版 mvn clean package exec:exec@jlink exec:exec@image

  • 安装包 mvn clean package exec:exec@jlink exec:exec@installer

  • 注意事项,修改pom.xml中javahome路径以及名称

    !--JAVA_HOME路径-->
    <javahome.path>D:/myProgram/jdk-17.0.7</javahome.path>
    <!-- 打包、镜像 统一名称 -->
    <pkg.imagename>APP</pkg.imagename>
    <!--厂商 -->
    <pkg.vendor>xxx有限公司</pkg.vendor>
    <!-- 描述 -->
    <pkg.description>Java-Swing-APP-Demo</pkg.description>
    <!-- 版权 -->
    <pkg.copyright>rocoplayer.com</pkg.copyright>
    <!-- 版本号 -->
    <pkg.version>1.0.0</pkg.version>

如需要打包MAC,自行将
<argument>-t</argument>
<argument>exe</argument>
改成需要的格式,参考jdk的jpackage支持的打包格式
  • 启动应用 .\target\nativeBuild\*.exe

项目配置(app.properties)

title=Java-Swing-Template
icon=icon/icon.png
stage.width=640
stage.height=480
stage.resizable=true

项目截图

请添加图片描述

  • 如需使用JavaFX版本的请看这里
  • PS:个人推荐swing,当然如果有想对界面高度定制,可以试试idea的插件JFormDesigner,可以可视化设计界面,当然简单的界面无需可视化,直接撸java代码,算算坐标就出来了

参与贡献

  1. Fork 本仓库
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/743159.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Netty学习(二)——黏包半包、协议设计解析、聊天室

一、粘包与半包 1.1 粘包和半包复现 1、粘包复现&#xff1a; Server代码&#xff1a; public class ProblemServer {public static void main(String[] args) throws InterruptedException {new ServerBootstrap()//若是指定接收缓冲区大小&#xff1a;就会出现黏包、半包…

Unity2D - 碰撞检测及边界检测

1. 地面检测 1.1 地面检测的逻辑及代码 一般情况下&#xff0c;对于手人物进行事件处理或动作处理时&#xff0c;我们需要判定人物是否在地面上&#xff0c;这个时候最好的方式是设定地面碰撞器&#xff0c;只有角色在地面时才可以进行跳跃; 我们可以想象物体的重心向地面延伸…

rapidocr-onnxruntime库及在open-webui上传PDF 图像处理 (使用 OCR)应用

背景 rapidocr-onnxruntime是一个跨平台的OCR库&#xff0c;基于ONNXRuntime推理框架。 目前已知运行速度最快、支持最广&#xff0c;完全开源免费并支持离线快速部署的多平台多语言OCR。 缘起&#xff1a;百度paddle工程化不是太好&#xff0c;为了方便大家在各种端上进行oc…

苏宁易购通用卡怎么使用?

现在还有人用苏宁的礼品卡吗 前两天618&#xff0c;想买点家电&#xff0c;但是在苏宁上看价格还不如京东淘宝优惠 最后手里的苏宁卡也没用出去 本来想着要不送人算了&#xff0c;但是收卡云的价格也还不错&#xff0c;最后就卖出去了 500块钱的苏宁卡买了475&#xff0c;到…

智慧校园-后勤管理系统总体概述

在今天这个信息化飞速发展的时代&#xff0c;智慧校园后勤管理系统就像一股清新的风&#xff0c;悄悄吹走了过去校园后勤工作中的一些老难题。它就像是个超级聪明的帮手&#xff0c;用上了物联网、大数据那些听起来就很高大上的技术&#xff0c;目的很简单&#xff0c;就是让学…

华为研发PMO能力建设架构实战

华为作为全球领先的ICT解决方案供应商&#xff0c;在项目管理领域的实践和探索无疑是行业的标杆。本文将通过分析华为研发PMO&#xff08;项目管理办公室&#xff09;的能力建设架构&#xff0c;揭示其在项目化运作中的关键要素、流程与方法、组织变革及人力资源管理等方面的卓…

vs利器Visual Assist X的十大顶级用法及下载注册

Visual Assist X是一款功能强大的Microsoft Visual Studio插件&#xff0c;它可以显著提高编程效率和代码质量。 十大顶级用法 1.打开任意文件(ShiftAltO) Visual Assist X只需通过简单的快捷键ShiftAltO&#xff0c;结合文件名或搜索模式&#xff0c;即可迅速定位并打开项目…

驾校预约管理系统

摘 要 随着驾驶技术的普及和交通安全意识的增强&#xff0c;越来越多的人选择参加驾校培训&#xff0c;以获取驾驶执照。然而&#xff0c;驾校管理面临着日益增长的学员数量和繁琐的预约管理工作。为了提高驾校的管理效率和服务质量&#xff0c;驾校预约管理系统成为了必不可少…

全国首场以AI数字内容风控为主题的大会,开放参会报名中

网易易盾将于2024年7月6日举办一场AI数字内容风控大会&#xff0c;邀请AI产业链的基础层、模型层和应用层的企业代表&#xff0c;科研机构、律所、院校的专家老师&#xff0c;探讨大模型时代下的自由与责任等话题。参会报名链接&#xff1a;https://sourl.cn/vqUU7X&#xff0c…

node.js 离线实时语音识别

前言 在node.js实现语音实时转文字。获取麦克风实时语音转文字。 下面是用vosk的效果。注意踩坑要及时评论哦&#xff0c;坑还是挺多的。 在探索后发现本地模型对设备还是有一定要求的&#xff0c;最总无奈采用百度语音识别的方案。 探索结果分享给大家&#xff0c;希望能在项…

IDS Gaia-X Catena-X Manufacturing-X的关系

来源&#xff1a;小盟科普丨Catena-X数据空间在汽车领域落地https://mp.weixin.qq.com/s/Ftp0UGAohsh4ltLn3DylAw

基于Java毕业生生活用品出售网站设计和实现(源码+LW+调试文档+讲解等)

&#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN作者、博客专家、全栈领域优质创作者&#xff0c;博客之星、平台优质作者、专注于Java、小程序技术领域和毕业项目实战✌&#x1f497; &#x1f31f;文末获取源码数据库&#x1f31f;感兴趣的可以先收藏起来&#xff0c;还…

CMA软件测试报告对企业和用户有什么好处?

CMA是中国计量认证的简称&#xff0c;由省级以上人民政府计量行政部门对检测机构的检测能力及可靠性进行的一种全面的认证及评价&#xff0c;认证对象是所有对社会出具公正数据的产品质量监督检验机构及其它各类实验室&#xff0c;是需要强制性认证的资质。取得该资质认证的&am…

如何将 ChatGPT (OpenAI) 与 Kubernetes 集成

Kubernetes是一种非常流行的容器编排平台&#xff0c;旨在大规模管理分布式应用程序。它具有许多用于部署、扩展和管理容器的高级功能&#xff0c;使软件工程师能够构建高度灵活且具有弹性的基础设施。 此外&#xff0c;值得注意的是&#xff0c;它是一款开源软件&#xff0c;…

[RK-Linux] RK3562 I2C驱动TP芯片GSL3680

TP芯片GSL3680 1、简介 GSL3680是一款电容屏多点触摸控制单芯片,其芯片内部框架图如下所示: GSL3680采用了独特的互电容感应技术,可以在1ms内测量多达192个节点,支持广泛的传感器选择,包括单层或双层ITO,玻璃或薄膜,采用了先进的抗电磁干扰信号处理技术,使其对各种干…

Chrome开发者工具学习

打开开发者工具&#xff1a; 可以通过在网页上点击右键并选择“检查”来打开。 或者使用快捷键Ctrl Shift I&#xff08;在Windows/Linux上&#xff09;或Command Option I&#xff08;在Mac上&#xff09;。 界面概览&#xff1a; 熟悉DevTools的基本面板&#xff0c;如“…

浊度传感器设备的监测控制和智慧运维

浊度传感器是一种用于测量液体中悬浮颗粒浓度从而反映液体浊度的设备。 其工作原理主要基于以下几种常见方式&#xff1a; 1. 散射光测量原理&#xff1a;当光线穿过含有悬浮颗粒的液体时&#xff0c;颗粒会使光线发生散射。传感器通过测量特定角度的散射光强度来确定浊度。散…

【OpenCV 图像处理 Python版】OpenCV 简介及安装

文章目录 1.OpenCV 介绍1.1 OpenCV 的特点1.2 OpenCV 的主要模块1.3 OpenCV 的应用场景 2.OpenCV-Python 库3.OpenCV 安装 1.OpenCV 介绍 OpenCV&#xff08;Open Source Computer Vision Library&#xff09;是一个开源的计算机视觉和机器学习软件库。它由英特尔公司于1999年…

java版CRM客户关系管理系统Spring Cloud alibaba Spring Boot成长型企业必备的客户关系管理系统

鸿鹄CRM客户关系管理系统是一款基于Java语言开发的CRM系统&#xff0c;采用了Spring Cloud Alibaba、Spring Boot、MybatisPlus、Redis和VUE3 ElementUI等技术&#xff0c;构建了一个微服务架构。该系统具有以下功能模块&#xff1a; 一、待办事项 1、今日需联系客户&#xf…

QT学习积累——float 接收 两个 int类型的值相除的结果,即 float f = int(1)/ int(2)= 0

目录 引出除法的一个坑 总结自定义信号和槽1.自定义信号2.自定义槽3.建立连接4.进行触发 自定义信号重载带参数的按钮触发信号触发信号拓展 lambda表达式返回值mutable修饰案例 引出 QT学习积累——float 接收 两个 int类型的值相除的结果&#xff0c;即 float f int&#xf…