专业IT网络知识平台,分享IT百科知识、生活百科知识解答!

易企推科技
易企推科技

Java中的JEP包工具

来源:小易整编  作者:小易  发布时间:2024-03-17 09:36
摘要:JEP(即Java增强提案)是增强Java平台的想法。JEP打包工具就是这样一种改进,它使程序员能够将Java程序打包为本机可执行文件。开发人员可以通过实施JEPPackageTool从Java程序创建本机可执行...

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

Java中的JEP包工具

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

使用JEP包工具的语法

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

jpackage [options]
登录后复制

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

选项如下:

--name - 包的名称。

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

--main-jar − 主JAR文件的名称。

--main-class − 主类的名称。

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

--output − 输出文件的名称。

--vendor − 供应商的名称。

--copyright - 版权声明。

--description - 描述。

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

如何使用JEP包工具

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

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

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

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

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

第三步 - 编译应用程序

使用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中的JEP包工具的详细内容,更多请关注易企推科技其它相关文章!


本文地址:网络知识频道 https://www.hkm168.com/jiqiao/1149097.html,易企推百科一个免费的知识分享平台,本站部分文章来网络分享,本着互联网分享的精神,如有涉及到您的权益,请联系我们删除,谢谢!


网络知识
小编:小易整编
相关文章相关阅读
  • 奇异值分解(SVD)简介及其在图片压缩中的示例

    奇异值分解(SVD)简介及其在图片压缩中的示例

    奇异值分解(SVD)是一种用于矩阵分解的方法。它将一个矩阵分解为三个矩阵的乘积,分别是左奇异向量矩阵、右奇异向量矩阵和奇异值矩阵。SVD在数据降维、信号处理、推荐系统等领域广泛应用。通过SVD,我们可以将高维数据降低到低维空间,从而提取出数...

  • 什么是构造函数?详解JavaScript中的构造函数

    什么是构造函数?详解JavaScript中的构造函数

    作为原型和原型链的基础,先了解清楚构造函数以及它的执行过程才能更好地帮助我们学习原型和原型链的知识。本篇文章带大家详细了解一下javascript中的构造函数,介绍一下怎么利用构造函数创建一个js对象,希望对大家有所帮助!一个普通的函数被用...

  • mysql中的不等于符号是什么

    mysql中的不等于符号是什么

    mysql中的不等于符号有两种:“!=”和“”;它们都可用于判断数字、字符串、表达式是否不相等。对于“!=”和“”,如果两侧操作数不相等,返回值为1,否则返回值为0;如果两侧操作数有一个是null,那么返回值也是null。本教程操作环境:w...

  • 如何取消PPT中的所有动画效果和声音

    如何取消PPT中的所有动画效果和声音

    当我们为ppt添加了动画效果后,有时又会发现需要取消这些动画效果。那么,ppt动画效果怎么全部取消?幸运的是,powerpoint提供了一种简单而高效的方法。下面小编就来为大家讲讲如何去掉ppt的动画效果,让观众更好地关注您想要传达的信息。...

  • Java 中的各种锁有哪些?

    Java 中的各种锁有哪些?

      Java中15种锁的介绍  在读很多并发文章中,会提及各种各样锁如公平锁,乐观锁等等,这篇文章介绍各种锁的分类。介绍的内容如下:  公平锁/非公平锁  可重入锁/不可重入锁  独享锁/共享锁  互斥锁/读写锁  乐观锁...

  • 如何使用PHP中的字符串变量

    如何使用PHP中的字符串变量

    如何使用PHP中的字符串变量在PHP中,字符串变量是一种非常常见的数据类型,用于存储和操作文本数据。在本文中,我们将介绍如何使用PHP中的字符串变量,并提供一些具体的代码示例。字符串变量的声明和赋值在PHP中,要声明一个字符串变量,只需要使...

  • Java中的Scanner操作详解

    Java中的Scanner操作详解

    scanner是java中的一个常用类,用来读取控制台或文件中的输入数据。它提供了一种简单的方式来解析基本类型和字符串,并支持对正则表达式进行匹配。Scanner类位于java.util包中,因此在编写程序时需要import...

  • 浅析Vue项目中怎么用Pinia状态管理工具

    浅析Vue项目中怎么用Pinia状态管理工具

    vue项目中怎么用pinia状态管理工具?下面本篇文章带大家聊聊vue项目中pinia状态管理工具的使用,希望对大家有所帮助!Pinia官网介绍说:Pinia是Vue的存储库,它允许您跨组件/页面共享状态。Vuex同样可以作为状态管理...

  • 周排行
  • 月排行
  • 年排行

精彩推荐