魔术桌
  • 更新日志
  • 新闻资讯
  • 数据资产
  • 网站导航
  • 订阅推荐
  • 商品推广
  • 日记
  • 摘录
  • 论文
  • 方案
  • 技术
  • 风格
  • 视觉
  • 原材料
  • 加工工艺
  • 元器件
  • 产品设备
  • 设计模式
  • 数据结构
  • 算法设计
  • 软件架构
  • 程序语言
  • 代码类库
  • 操作系统
  • 软件包
  • 健康
  • 环境
  • 社会
  • 道德
  • 法律
  • 经济
  • 政策
  • 更新日志
  • 新闻资讯
  • 数据资产
  • 网站导航
  • 订阅推荐
  • 商品推广
  • 日记
  • 摘录
  • 论文
  • 方案
  • 技术
  • 风格
  • 视觉
  • 原材料
  • 加工工艺
  • 元器件
  • 产品设备
  • 设计模式
  • 数据结构
  • 算法设计
  • 软件架构
  • 程序语言
  • 代码类库
  • 操作系统
  • 软件包
  • 健康
  • 环境
  • 社会
  • 道德
  • 法律
  • 经济
  • 政策
  • Package - Oracle JDK - 终端命令 - java

文章摘要: 摘要内容。

简介

  • java 命令启动 Java 应用程序。通过启动 Java 运行时环境 (JRE)、加载指定的类并调用该类的 main() 方法来执行此操作。
  • java 命令可用于通过加载具有 main() 方法或扩展 javafx.application.Application 的类来启动 JavaFX 应用程序。在后一种情况下,启动程序构造 Application 类的实例,调用其 init() 方法,然后调用 start(javafx.stage.Stage) 方法。
  • 默认情况下,不是 java 命令选项的第一个参数是要调用的类的完全限定名称。如果指定了 -jar 选项,则其参数是包含应用程序的类和资源文件的 JAR 文件的名称。启动类必须由其源代码中的 Main-Class 清单标头指示。
  • JRE 在三组位置搜索启动类(以及应用程序使用的其他类):引导程序类路径、已安装的扩展和用户的类路径。
  • 类文件名或 JAR 文件名后面的参数将传递给 main() 方法。

格式

提示

java [<选项>] <类名> [<参数>]:运行java字节码文件,即已经编译过的文件。

java [<选项>] -jar <文件名> [<参数>]:运行jar文件,即打包好的文件。

选项

注释

标准选项

  • 这些是 JVM 的所有实现都支持的最常用的选项。

-help -?

  • 显示 java 命令的使用情况信息,而不实际运行 JVM。

-agentlib:<本机代理程序库名>[=<选项>]

  • 加载指定的本机代理程序库。在库名称之后,可以使用特定于库的逗号分隔选项列表。
  • 有关本机代理库的更多信息,请参阅以下内容:
  • 本机代理程序库名:java.lang.instrument 包描述 http://docs.oracle.com/javase/8/docs/api/java/lang/instrument/package-summary.html
  • 选项:JVM 工具界面指南中的代理命令行选项,网址为 http://docs.oracle.com/javase/8/docs/platform/jvmti/jvmti.html#starting

-agentpath:<本机代理程序库的绝对路径>[=<选项>]

  • 加载由绝对路径名指定的本机代理程序库。
  • 此选项等效于 -agentlib,但使用库的完整路径和文件名。

-client

  • 选择 Java HotSpot 客户端 VM。
  • Java SE 开发工具包 (JDK) 的 64 位版本当前忽略此选项,而是使用 Server JVM。

-D<属性>=<值>

  • 设置系统属性值。
  • 属性 变量是一个没有空格的字符串,表示属性的名称。
  • 值 变量是表示属性值的字符串。
  • 如果 值 是带空格的字符串,则用引号将其括起来(例如 -Dfoo=“foo bar”)。

-d32

  • 在 32 位环境中运行应用程序。
  • 如果未安装 32 位环境或不支持 32 位环境,则会报告错误。
  • 默认情况下,除非使用 64 位系统,否则应用程序将在 32 位环境中运行。

-d64

  • 在 64 位环境中运行应用程序。
  • 如果未安装 64 位环境或不支持 64 位环境,则会报告错误。
  • 默认情况下,除非使用 64 位系统,否则应用程序将在 32 位环境中运行。
  • 目前只有 Java HotSpot Server VM 支持 64 位操作,并且 -server 选项是使用 -d64 时隐含的。使用 -d64 时,将忽略 -client 选项。在未来版本中,这可能会发生更改。

-disableassertions[:[<包名>]...|:<类名>] -da[:[<包名>]...|:<类名>]

  • 禁用断言。默认情况下,断言在所有包和类中都处于禁用状态。

-disablesystemassertions -dsa

  • 禁用所有系统类中的断言。

-enableassertions[:[<包名>]...|:<类名>] -ea[:[<包名>]...|:<类名>]

  • 启用断言。默认情况下,断言在所有包和类中都处于禁用状态。

-enablesystemassertions -esa

  • 在所有系统类中启用断言。

-jar <文件名>

  • 执行封装在 JAR 文件中的程序。
  • 文件名 参数是一个 JAR 文件的名称,其清单包含一行 Main-Class:``classname 格式的行,该行使用用作应用程序起点 public static void main(String[] args) 的方法定义类。
  • 使用 -jar 选项时,指定的 JAR 文件是所有用户类的源,其他类路径设置将被忽略。

-javaagent:<JRE路径>[=<选项>]

  • 加载指定的 Java 编程语言代理。

-jre-restrict-search

  • 在版本搜索中包括用户专用 JRE。

-no-jre-restrict-search

  • 从版本搜索中排除用户专用 JRE。

-server

  • 选择 Java HotSpot Server VM
  • JDK 的 64 位版本仅支持服务器 VM,因此在这种情况下,该选项是隐式的。

-showversion

  • 显示版本信息并继续执行应用程序。
  • 此选项等同于 -version 选项,不同之处在于后者指示 JVM 在显示版本信息后退出。

-splash:<图片>

  • 显示带有 图片 指定图像的初始屏幕。
  • 例如,要在启动应用程序时显示 images 目录中的 splash.gif 文件,请使用以下选项:-splash:images/splash.gif

-verbose:class

  • 显示有关每个加载的类的信息。

-verbose:gc

  • 显示有关每个垃圾回收(GC)事件的信息。

-verbose:jni

  • 显示有关使用本机方法和其他 Java 本机接口(JNI)活动的信息。

-version

  • 显示版本信息,然后退出。
  • 此选项等同于 -showversion 选项,不同之处在于后者不会指示 JVM 在显示版本信息后退出。

-version:<版本号>

  • 指定要用于运行应用程序的发布版本。如果调用的 java 命令的版本不符合此规范,并且在系统上找到了适当的实现,则将使用适当的实现。

类名

  • 要启动的类的名称。

文件名

  • 要调用的 Java 存档 (JAR) 文件的名称。仅与 -jar 选项一起使用。

参数

  • 传递给 main() 方法的参数,以空格分隔。

案例

# 运行jar文件
java -jar myapp.jar
更新时间: 2025/10/25 12:23