JAR文件如何在没有安装JDK的电脑上运行(指定运行环境)

一、JAR包是什么?

首先,我们来了解一下JAR(Java Archive)包。JAR包是一种文件格式,用于将Java类、资源和元数据打包到一个文件中。它通常用于将Java库、应用程序或模块分发给其他开发人员或部署到不同的环境中。JAR包可以包含许多不同类型的文件,包括.class文件(编译后的Java类)、.java文件(源代码)、图像、音频、配置文件等。

二、JAR包的创建

创建JAR包有两种主要方法:手动创建和使用工具(如Maven或Gradle)自动创建。

手动创建JAR包需要将所需的文件复制到一个文件夹中,然后在该文件夹中创建一个名为Manifest.txt的文件。Manifest.txt文件指定了JAR包的入口点(即主类),以及其他相关信息。然后,可以使用jar命令将文件夹打包成一个JAR文件。例如:

jar cvfm MyJar.jar Manifest.txt *.class

使用Maven或Gradle等构建工具可以更方便地创建和管理JAR包。例如,使用Maven可以将项目打包成一个可执行的JAR文件,只需在项目根目录下运行以下命令:

mvn clean package

具体生成JAR包,可参考博文:

idea中java maven程序打JAR包的方式 ( idea中java maven程序打JAR包的方式-CSDN博客 )

此步生成一个检测JDK版本的jar包,名为demo.jar。

三、JDK vs JRE

JDK包含了JRE的所有内容,同时还包括JAVA编译器(javac)和其他开发工具,因此它适用于开发java应用程序。

JRE仅包含java运行时环境,用于运行java程序。

JDK下载地址参考博文: windows下切换JDK8、JDK11、JDK17( windows下切换JDK8、JDK11、JDK17-CSDN博客 )

JRE9生成方式参考博文: JDK9及之后版本使用 jlink 生成定制化的 JRE( JDK9及之后版本使用 jlink 生成定制化的 JRE-CSDN博客 )

此步生成一个具体版本的jre文件夹。

 

四、如何运行JAR包?

为了运行JAR文件,至少需要安装JRE。如果计划进行java开发,那么安装JDK是必要的。

要运行JAR包,可以使用Java命令。例如,要运行一个名为MyJar.jar的JAR文件,可以在命令行中输入以下命令:

java -jar MyJar.jar

如果JAR包包含可执行的主类,则可以通过指定主类来运行它。例如:

java -cp MyJar.jar com.examp le.MainClass

注意:此处的java,会使程序到系统的环境变量中寻找java.exe程序,若是没有配置环境变量则会报不是内部命令或可运行的程序等。基于此,我们可以将jar包和jre文件打包在一起,在启动jar包命令中,指定jre文件包中的java.exe程序,这样就可以实现在没有安装JDK的电脑上运行jar包,也可以使jar包用指定的java环境运行。

将三中生成的jre文件夹和二中生成的jar包放于一个文件夹demo,运用下面的命令启动运行jar包,

后续可以将demo文件夹分发给没有安装JDK的电脑上运行jar包。

1.将demo.jar包放于jre文件中的bin文件下,用下述命令可以启动运行jar

格式: java -jar xxx.jar

xxx为jar包的文件名

如: java -jar demo.jar

JAR文件如何在没有安装JDK的电脑上运行(指定运行环境)_第1张图片

2.指定bin文件夹路径

格式: path\\java -jar xxx.jar

path为jre中bin文件夹的路径; xxx为jar包的文件名

如: .\\jdk-11.0.19\\bin\\java -jar demo.jar

3.其余格式

start java -jar demo.jar

start ./jre/bin/java -jar demo.jar

五、小结

1.新建一个java工程,写入检测JDK版本的代码

2.打包一个jar包,改名为: demo.jar

3.新建一个文件夹,命名为: test; 将demo.jar放于test文件夹; 将jre文件夹放于test文件夹,最终test文件夹结构为:

JAR文件如何在没有安装JDK的电脑上运行(指定运行环境)_第2张图片

4.启动运行jar包

你可能感兴趣的:(JAVA知识点杂烩,java,jar)