0

0

Java中的JEP包工具

王林

王林

发布时间:2023-09-14 17:21:24

|

2186人浏览过

|

来源于tutorialspoint

转载

java中的jep包工具

JEP(即 Java 增强提案)是增强 Java 平台的想法。 JEP 打包工具就是这样一种改进,它使程序员能够将 Java 程序打包为本机可执行文件。

开发人员可以通过实施 JEP Package Tool 从 Java 程序创建本机可执行文件。这样做可以赋予这些可执行文件独立性,从而消除对 Java 虚拟机 (JVM) 或其他相关软件组件的依赖。这个强大工具的出现始于 Java 14,它是作为实验性功能引入的。

使用JEP包工具的语法

JEP 包工具的语法易于阅读和理解。使用 JEP 打包工具。您的计算机上必须安装 JDK 14。由于该工具通过命令行工作。使用它需要打开终端窗口或命令提示符。这是 JEP 包工具的语法 -

jpackage [options]

[options] 字段提供了您可以使用的各种参数,以修改JEP Package Tool的行为。可选和必选选项可以分为两组。

立即学习Java免费学习笔记(深入)”;

选项如下:

  • --name - 包的名称。

  • --input - 包含应用程序文件的输入目录。

  • --main-jar <jar-file> − 主JAR文件的名称。

  • --main-class <class-name> − 主类的名称。

  • --type <type> − 包的类型(例如,exe,msi,deb,rpm)。

  • --output <file> − 输出文件的名称。

  • --vendor <name> − 供应商的名称。

  • --copyright - 版权声明。

  • --description - 描述。

  • --resource-dir - 包含资源的目录。

如何使用JEP包工具

按照以下步骤使用 JEP 打包工具 -

  • 第 1 步 - 安装 Java 14 或更高版本

    使用 JEP Package Tool 的唯一要求是安装 Java 14 或更新版本。因此,如果您的设备缺少已安装的该版本的 Java 软件;访问该工具必须安装它。

  • 步骤 2 − 创建一个 Java 应用程序

    为了将 Java 应用程序打包为本地可执行文件,请创建它。可以使用非模块化应用程序或模块化应用程序。

  • 第三步 - 编译应用程序

    Yodayo
    Yodayo

    一个专为动漫迷和vTuber打造的AI艺术创作平台、交流社区

    下载

    使用Java编译器编译程序

  • 第四步 - 创建包

    一旦程序构建完成,可以使用JEP Package工具生成原生可执行包。为了实现这一点,您必须提供模块的名称和输出文件的位置。

    以下是使用JEP Package工具生成原生可执行包的示例命令 -

jpackage --name MyApplication --input target/modules --main-jar MyApp.jar --main-class com.example.MyApp --type exe --output MyApplication.exe

对于这个特定的示例,所使用的软件带有“MyApplication”的名称,并通过适当地标题为“MyApp.jar”的中央 JAR 文件进行操作。可以在标记为“target/modules”的指定目录中找到对数据输入的访问。此外,该程序操作的主要类组成部分的名称为“com.example.MyApp”。利用此类过程生成的最终产品将在标记为“MyApplication.exe”的输出文件中存放相关信息,该输出文件是在指定为可执行(“exe”)格式的包结构的范围内设计的。

在Servlet中使用属性的不同方法

根据应用程序的特定要求,有多种方法可以使用 JEP 封装工具。

方法一:仅打包一个JAR文件

如果您的程序仅由一个 JAR 文件组成,那么 JEP 包工具就是您的最佳选择,它允许您生成一个自给自足的可执行文件。尤其。该可执行文件无需在任何计算机上安装不同的 JRE 即可运行。例如 -

jpackage --input /path/to/myapp.jar --main-jar myapp.jar

使用此命令可以生成一个自主可执行文件。它将生成一个名为myapp的文件,可以在任何计算机上轻松执行。

方法2:将多个文件打包到一个目录

处理多个分布式资源和配置文件或不同库的开发人员应该选择 JEP 包工具,它提供了有效的解决方案。有了这个工具,就可以生成一个包罗万象的可执行包,其中包含所有必需的内容。

jpackage --input /path/to/myapp --main-jar myapp.jar

该命令将创建一个自包含的可执行文件,名为myapp,其中包含/path/to/myapp目录中的所有文件。

方法三:为多个平台生成可执行文件

要创建特定于平台的可执行文件,例如 Windows 的 EXE 文件或 macOS 的 DMG 文件,可以利用 JEP Package Tool 的 --type 选项。以下是一些命令示例 -

jpackage --input /path/to/myapp --main-jar myapp.jar --type exe

这个特定的命令具有生成Myapp.exe的能力 - 这是一个完全自包含且高度可适应的可执行文件,专门为在Windows环境中使用而创建。

jpackage --input /path/to/myapp --main-jar myapp.jar --type dmg

通过这个命令将会生成一个可以在 macOS 上执行的自包含可执行文件 Myapp.dmg。

JEP软件包工具的高级功能

此外,JEP 包工具还提供了许多复杂的功能,可用于进一步定制包。这是一些插图 -

创建自定义启动画面

要为您的程序提供独特的启动屏幕,请使用 --splash 选项。命令示例如下 -

jpackage --input /path/to/myapp --main-jar myapp.jar --splash splash.png

此命令将生成一个独立的可执行文件,该文件具有名为splash.png的独特启动屏幕。

签署包裹

要使用证书对包进行签名,请使用 --sign 选项。命令示例如下 -

jpackage --input /path/to/myapp --main-jar myapp.jar --sign mycert

该程序将生成一个独立的可执行文件,该文件已签名并具有一个名为 mycert 的证书,名为 myapp。

合并 JVM 选择

启动程序时,您可以使用 --java-options 选项包含 JVM 参数。命令示例如下 -

jpackage --input /path/to/myapp --main-jar myapp.jar --java-options "-Xmx512m -Dmyprop=value"

JVM 选项 -Xmx512m 和 -Dmyprop=value 将包含在此命令生成的独立可执行文件中。

结论

JEP Package Tool 是一个强大的工具,可以让开发人员轻松地将 Java 程序打包成独立的可执行文件。 JEP 包工具可用于生成特定于特定平台的可执行文件,使用独特的启动屏幕和签名自定义包,并凭借其简单的语法和复杂的功能将 JVM 参数添加到应用程序的运行时。开发人员可以利用 JEP 包工具使 Java 应用程序更易于使用和访问,而无需安装单独的 JRE。

相关文章

java速学教程(入门到精通)
java速学教程(入门到精通)

java怎么学习?java怎么入门?java在哪学?java怎么学才快?不用担心,这里为大家提供了java速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

WorkBuddy
WorkBuddy

腾讯云推出的AI原生桌面智能体工作台

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
什么是分布式
什么是分布式

分布式是一种计算和数据处理的方式,将计算任务或数据分散到多个计算机或节点中进行处理。本专题为大家提供分布式相关的文章、下载、课程内容,供大家免费下载体验。

407

2023.08.11

分布式和微服务的区别
分布式和微服务的区别

分布式和微服务的区别在定义和概念、设计思想、粒度和复杂性、服务边界和自治性、技术栈和部署方式等。本专题为大家提供分布式和微服务相关的文章、下载、课程内容,供大家免费下载体验。

251

2023.10.07

servlet生命周期
servlet生命周期

Servlet生命周期是指Servlet从创建到销毁的整个过程。本专题为大家提供servlet生命周期的各类文章,大家可以免费体验。

393

2023.08.08

resource是什么文件
resource是什么文件

Resource文件是一种特殊类型的文件,它通常用于存储应用程序或操作系统中的各种资源信息。它们在应用程序开发中起着关键作用,并在跨平台开发和国际化方面提供支持。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

181

2023.12.20

class在c语言中的意思
class在c语言中的意思

在C语言中,"class" 是一个关键字,用于定义一个类。想了解更多class的相关内容,可以阅读本专题下面的文章。

891

2024.01.03

python中class的含义
python中class的含义

本专题整合了python中class的相关内容,阅读专题下面的文章了解更多详细内容。

32

2025.12.06

点击input框没有光标怎么办
点击input框没有光标怎么办

点击input框没有光标的解决办法:1、确认输入框焦点;2、清除浏览器缓存;3、更新浏览器;4、使用JavaScript;5、检查硬件设备;6、检查输入框属性;7、调试JavaScript代码;8、检查页面其他元素;9、考虑浏览器兼容性。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

197

2023.11.24

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

1496

2023.07.26

Python异步编程与Asyncio高并发应用实践
Python异步编程与Asyncio高并发应用实践

本专题围绕 Python 异步编程模型展开,深入讲解 Asyncio 框架的核心原理与应用实践。内容包括事件循环机制、协程任务调度、异步 IO 处理以及并发任务管理策略。通过构建高并发网络请求与异步数据处理案例,帮助开发者掌握 Python 在高并发场景中的高效开发方法,并提升系统资源利用率与整体运行性能。

37

2026.03.12

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号