jpackage 打包 jar包 为exe可执行程序

jpackage  --input target/  --main-jar note.jar  --runtime-image H:/Dpanbeifeng/apps/finalshell/jre  --type app-image --dest output/ --main-class com.textmanager.Main --icon logo2.png  --name 猫咪快笔记

jpackage 打包指令详细介绍

jpackage 概述

jpackage 是 Java 14 正式加入的一个用于独立打包的工具,该工具将以 Java 应用程序和 Java 运行时映像作为输入,并生成一个包含所有必要依赖项的 Java 应用程序映像。它可以生成特定于平台格式的本机软件包,例如 Windows 上的 exe 或 macOS 上的 dmg。每种格式都必须在其所在的平台上构建,没有跨平台支持。该工具还提供各种选项,允许以不同方式自定义打包的应用程序1。

前期准备

Java 版本

JPackage 指令是 JAVA 14 新增的,所以安装的 JAVA 版本必须 14+。若使用 jpackage 打包 JavaFX 应用,需确保 Java 版本是 17 或更高,因为从 Java 17 开始引入了对打包 JavaFX 应用的支持12。

打包成 jar 文件

使用 mvn package 命令在项目下生成 target 目录,且包含打包成的 jar(例如:demo - 1.0.jar ),并确认这个 jar 能使用 java -jar ***.jar 命令运行。也可以通过 IDE 或使用 Maven、Gradle 等构建工具来生成 JAR 文件12。

安装 WiX Toolset(可选,生成 msi 安装程序时需要)

若要生成 Windows 平台的 msi 安装程序,需要提前安装 WiX Toolset。安装 wix311 需要 .NET 3.5.1 环境,在 win10 电脑上可按以下步骤操作:打开控制面板,点击程序,点击启用或关闭 Windows 功能,在打开的窗口里勾选 .NET Framework 3.5,然后让 Windows 下载安装即可。安装完 wix 工具后就可以使用 jpackage 生成 msi 安装程序1。

运行过程

进入 jdk 对应 bin 目录

进入安装的 JDK 版本(如 jdk17)的 bin 目录下。

打开命令行工具

可以使用 CMD 或 Powershell 打开命令行窗口。

使用 jpackage 打包文件

生成运行程序 app - image

使用相应的 jpackage 命令来生成 app - image,具体命令需根据实际情况配置参数。

生成运行程序 exe

配置好相关参数后,使用 jpackage 命令生成 Windows 平台的 exe 运行程序。

生成安装程序 msi

在安装好 WiX Toolset 后,通过配置合适的参数使用 jpackage 命令生成 msi 安装程序1。

jpackage 参数解释

jpackage 有很多参数可以配置,例如应用名称、版本、许可证文件等。可以在命令行中使用 --help 参数来查看所有可用的参数。以下是一些常见参数及其作用示例:

参数作用
--input指定包含 JAR 文件的目录2
--name设置应用的名称2
--type指定生成的安装包类型(例如 dmg、exe、deb 等)2

打包 JavaFX 应用的流程

编写 JavaFX 应用

若还没有编写应用,可以使用 JavaFX SDK 和喜欢的 IDE 来创建一个2。

检查 Java 版本

确保 Java 版本是 17 或更高,可通过在终端或命令提示符中运行相应命令来检查 Java 版本2。

使用 jpackage 打包

生成 JAR 文件

可通过 IDE 或使用 Maven、Gradle 等构建工具完成2。

配置 jpackage 参数

根据需求配置如应用名称、版本、许可证文件等参数2。

执行 jpackage 命令

使用配置好参数的 jpackage 命令来打包应用,执行后将在指定的输入目录中生成安装包

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

H5移动端性能优化策略(渲染优化+弱网优化+WebView优化)

一、渲染优化:首屏速度提升的核心​​ ​​1. 关键页面采用SSR或Native渲染​​ ​​适用场景​​:首页、列表页、详情页等强内容展示页面 ​​优化原理​​: ​​SSR(服务端渲染)​​:在服务端生成完整…

Matlab | matlab中的图像处理详解

MATLAB 图像处理详解 这里写目录标题图像处理 MATLAB 图像处理详解一、图像基础操作1. 图像读写与显示2. 图像信息获取3. 图像类型转换二、图像增强技术1. 对比度调整2. 去噪处理3. 锐化处理三、图像变换1. 几何变换2. 频域变换四、图像分割1. 阈值分割2. 边缘检测3. 区域分割五…

keysight是德科技N9923A网络分析仪

keysight是德科技N9923A网络分析仪 简  述:N9923A 是一款使用电池供电的便携式射频矢量网络分析仪,其中包括全 2 端口网络分析仪、电缆和天线测试仪、故障点距离测试仪、功率计以及 1 通道和 2 通道矢量电压表。 主要特性与技术指标 网络分析仪 * 2…

idea不识别lombok---实体类报没有getter方法

介绍 本篇文章,主要讲idea引入lombok后,在实体类中加注解Data,在项目启动的时候,编译不通过,报错xxx.java没有getXxxx()方法。 原因有以下几种 1. idea没有开启lombok插件 2. 使用idea-2023…

本地主机部署开源企业云盘Seafile并实现外部访问

Seafile是一个开源、专业、可靠的云存储平台;解决文件集中存储、共享和跨平台访问等问题。这款软件功能强大,界面简洁、操作方便。 本文将详细的介绍如何利用本地主机部署 Seafile,并结合nat123,实现外网访问本地部署的 Seafile …

【从0-1的CSS】第1篇:CSS简介,选择器以及常用样式

文章目录 CSS简介CSS的语法规则选择器id选择器元素选择器类选择器选择器优先级 CSS注释 CSS常用设置样式颜色颜色名称(常用)RGB(常用)RGBA(常用)HEX(常用)HSLHSLA 背景background-colorbackground-imagebackground-size 字体text-aligntext-decorationtext-indentline-height 边…

SpringBoot+MySQL家政服务平台 设计开发

概述 基于SpringBootMySQL开发的家政服务平台完整项目,该系统实现了用户预约、服务管理、订单统计等核心功能,采用主流技术栈开发,代码规范且易于二次开发。 主要内容 系统功能架构 本系统采用前后端分离架构,前端提供用户交互…

3.1 HarmonyOS NEXT分布式数据管理实战:跨设备同步、端云协同与安全保护

HarmonyOS NEXT分布式数据管理实战:跨设备同步、端云协同与安全保护 在万物互联的时代,数据的跨设备流转与安全共享是全场景应用的核心需求。HarmonyOS NEXT通过分布式数据管理技术,实现了设备间数据的实时同步与端云协同,为开发…

高保真组件库:数字输入框

拖入一个文本框。 拖入一个矩形,作为整个数字输入框的边框,边框颜色为灰色DCDEE2,圆角半径为4。 拖入一个向上的箭头图标作为增加按钮,再拖入一个矩形,将向上箭头图标放入矩形内。矩形:18x15,边框颜色DCDEE2,边框左下可见,箭头图标:8x5,矩形置底,组合在一起命名”增…

【力扣链表篇】19.删除链表的倒数第N个节点

题目: 给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1: 输入:head [1,2,3,4,5], n 2 输出:[1,2,3,5]示例 2: 输入:head [1], n 1 输出:[]…

论文笔记——相干体技术在裂缝预测中的应用研究

目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术:基于互相关的相干体技术(Correlation)第二代相干体技术:基于相似的相干体技术(Semblance)基于多道相似的相干体…

wpf ListBox 去除item 单击样式

在WPF中去除ListBox项的单击样式&#xff0c;可以通过修改ItemContainerStyle来实现。以下是解决方案&#xff1a; <ListBox><ListBox.ItemContainerStyle><Style TargetType"ListBoxItem"><Setter Property"Background" Value"…

A Execllent Software Project Review and Solutions

The Phoenix Projec: how do we produce software? how many steps? how many people? how much money? you will get it. i am a pretty judge of people…a prank

Android 视图系统入门指南

1. View&#xff1a;界面的最小单位 本质&#xff1a;屏幕上的一个矩形区域&#xff0c;能显示内容或接收触摸。比喻&#xff1a;就像乐高积木&#xff0c;是组成界面的最小单位。常见子类&#xff1a; TextView&#xff08;文字积木&#xff09;、Button&#xff08;按钮积木…

【走好求职第一步】求职OMG——见面课测验4

2025最新版&#xff01;&#xff01;&#xff01;6.8截至答题&#xff0c;大家注意呀&#xff01;博主码字不易点个关注吧~~ 1.单选题(2分) 下列不属于简历撰写技巧原则的是&#xff08; A &#xff09; A.具体性 B.相关性 C.匹配性 2.单选题(2分) 笔试的下一步一般是:( B &…

瀚文(HelloWord)智能键盘项目深度剖析:从0到1的全流程解读

瀚文&#xff08;HelloWord&#xff09;智能键盘项目深度剖析&#xff1a;从0到1的全流程解读 一、项目整体概述 瀚文&#xff08;HelloWord&#xff09;智能键盘是一款多功能、模块化的智能机械键盘&#xff0c;由三大部分组成&#xff1a;键盘输入模块、可替换的多功能交互…

国产安路FPGA实现图像视频采集转HDMI输出,提供5套TD工程源码和技术支持

目录 1、前言工程概述免责声明 2、相关方案推荐我已有的所有工程源码总目录----方便你快速找到自己喜欢的项目国产安路FPGA相关方案推荐 3、设计思路框架工程设计原理框图输入Sensor之-->GC0308摄像头输入Sensor之-->OV7725摄像头输入Sensor之-->OV5640摄像头输入Sens…

35 C 语言字符串转数值函数详解:strtof、strtod、strtold(含 errno 处理、ERANGE 错误)

1 strtof() 函数 1.1 函数原型 #include <stdlib.h> // 必须包含这个头文件才能使用 strtof() #include <errno.h> // 包含 errno 和 ERANGE #include <float.h> // 包含 FlOAT_MAX 和 FLOAT_MIN #include <math.h> // 包含 HUGE_VALF(inf)float…

PaddleOCR项目实战(1):Python脚本中使⽤PaddleOCR

1 项目介绍 项目架构如下&#xff1a; APP/WEB/⼩程序为OCR识别接⼝调⽤端&#xff0c;调⽤OCR接⼝&#xff0c;实现OCR功能。本项⽬我们只实现Android APP开发。Nginx反向代理和负载均衡功能&#xff0c;通过Nginx实现对外⽹暴露接⼝&#xff0c;对内负载均衡SpringBoot实现的…

Reranker + BM25 + FAISS 构建高效的多阶段知识库检索系统一

一、什么是知识库检索&#xff1f; 在构建基于大语言模型的问答系统&#xff08;如 RAG&#xff09;中&#xff0c;知识库检索&#xff08;Retrieval&#xff09; 是第一步&#xff0c;也是影响最终回答质量的关键环节。它负责从大规模文档中快速定位与用户问题最相关的 top-k…