技术扫盲:如何优雅的使用 java -jar

java -jar xxx.jar

java -jar 是一个用于在命令行界面中执行 Java 可执行 JAR 文件的命令。它的语法如下:

复制代码
java -jar <JAR 文件路径> [参数]

其中:

  • java 是 Java 运行时环境的可执行文件。
  • -jar 是一个选项,表示要执行的文件是一个 JAR 文件。
  • <JAR 文件路径> 是要执行的 JAR 文件的路径。
  • [参数] 是可选的命令行参数,用于向 JAR 文件传递额外的参数。

使用 java -jar 命令时,Java 运行时环境会加载指定的 JAR 文件,并执行其中的主类(Main Class)。JAR 文件必须包含一个 META-INF/MANIFEST.MF 文件,其中指定了要执行的主类。

以下是一个示例:

复制代码
java -jar myapp.jar

这将执行名为 myapp.jar 的 JAR 文件中指定的主类。

注意:在执行 java -jar 命令之前,确保已经正确安装了 Java 运行时环境,并且在系统的 PATH 环境变量中已经正确配置了 Java 的可执行文件路径。

具体的例子

当在 java -jar 命令中使用参数时,参数将传递给 JAR 文件中的主类的 main 方法。主类可以通过命令行参数来接收和处理这些参数。下面是一个示例:

假设有一个名为 myapp.jar 的 JAR 文件,其中包含了一个主类 com.example.MyApp。这个应用程序接收一个命令行参数并将其打印到控制台上。

执行以下命令可以运行这个 JAR 文件并传递一个参数:

复制代码
java -jar myapp.jar hello

这将执行 myapp.jar 中的 com.example.MyApp 主类,并将参数 "hello" 传递给它。主类可以通过获取命令行参数并将其打印到控制台上来处理这个参数:

java 复制代码
package com.example;

public class MyApp {
    public static void main(String[] args) {
        if (args.length > 0) {
            System.out.println("参数值为: " + args[0]);
        } else {
            System.out.println("没有传递参数。");
        }
    }
}

当你运行 java -jar myapp.jar hello 命令后,你将在控制台上看到以下输出:

复制代码
参数值为: hello
相关推荐
Grey Zeng3 小时前
Java SE 25新增特性
java·jdk·jdk新特性·jdk25
雨白4 小时前
Java 线程通信基础:interrupt、wait 和 notifyAll 详解
android·java
架构师沉默8 小时前
设计多租户 SaaS 系统,如何做到数据隔离 & 资源配额?
java·后端·架构
Java中文社群9 小时前
重要:Java25正式发布(长期支持版)!
java·后端·面试
每天进步一点_JL10 小时前
JVM 类加载:双亲委派机制
java·后端
用户2986985301411 小时前
Java HTML 转 Word 完整指南
java·后端
渣哥11 小时前
原来公平锁和非公平锁差别这么大
java
渣哥11 小时前
99% 的人没搞懂:Semaphore 到底是干啥的?
java
J2K11 小时前
JDK都25了,你还没用过ZGC?那真得补补课了
java·jvm·后端
kfyty72511 小时前
不依赖第三方,不销毁重建,loveqq 框架如何原生实现动态线程池?
java·架构