技术扫盲:如何优雅的使用 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
相关推荐
二哈赛车手1 小时前
新人笔记---ApiFox的一些常见使用出错
java·笔记·spring
栗子~~2 小时前
JAVA - 二层缓存设计(本地缓冲+redis缓冲+广播所有本地缓冲失效) demo
java·redis·缓存
YDS8292 小时前
DeepSeek RAG&MCP + Agent智能体项目 —— RAG知识库的搭建和接口实现
java·ai·springboot·agent·rag·deepseek
未若君雅裁3 小时前
MyBatis 一级缓存、二级缓存与清理机制
java·缓存·mybatis
AI人工智能+电脑小能手4 小时前
【大白话说Java面试题 第65题】【JVM篇】第25题:谈谈对 OOM 的认识
java·开发语言·jvm
阿维的博客日记4 小时前
Nacos 为什么能让配置动态生效?(涉及 @RefreshScope 注解)
java·spring
雨辰AI4 小时前
SpringBoot3 + 人大金仓读写分离 + 分库分表 + 集群高可用 全栈实战
java·数据库·mysql·政务
辰海Coding6 小时前
MiniSpring框架学习-完成的 IoC 容器
java·spring boot·学习·架构
小小编程路6 小时前
C++ 多线程与并发
java·jvm·c++
AI视觉网奇6 小时前
linux 检索库 判断库是否支持
java·linux·服务器