java虚拟机高级参数及java命令大全 基于java8及以上

概要java命令执行的参数示例      java [options] classname [args]       java [options] -jar filename [args]      javaw [options] classname [args]      javaw [options] -jar filename [args] 参数示例说明       options...
摘要由CSDN通过智能技术生成

概要

  • java命令执行的参数示例
          java [options] classname [args]
         
    java [options] -jar filename [args]
          javaw [options] classname [args]
          javaw [options] -jar filename [args]
  • 参数示例说明

          options: 命令行选项由空格分隔
          classname:要启动的类的名称
          filename: 要调用的Java Archive(JAR)文件的名称。仅与-jar选项一起使用
          args:传递给main()方法的参数用空格分隔


     

选项

  • 标准选项
  • 非标准选项
  • 高级运行时选项
  • 高级JIT编译器选项
  • 高级可维护性选项
  • 高级垃圾手机选项

     

标准选项

参数 描述
-agentlib:libname [= options ]

加载指定的本地代理库。在库名之后,可以使用特定于库的以都好分割的选项列表

-agentpath:pathname [= options ] 加载绝对路径名指定的本机代理库。此选项等效于-agentlib但使用库的完整路径和文件名
-client 选择Java HotSpot客户端VM。64位版本的Java SE Development Kit(JDK)当前忽略此选项,而是使用Server JVM
-Dproperty=value 设置系统属性值。该属性变量是没有空格表示属性的名称的字符串。的变量是表示属性的值的字符串。如果value是带空格的字符串,则将其用引号括起来(例如-Dfoo="foo bar"
-disableassertions[:[packagename]...|:classname] 用来设置虚拟机关闭断言处理,packagename和classname的使用方法和-ea相同。
-da[:[packagename]...|:classname] 禁用断言。默认情况下,在所有包和类中禁用断言。
-disablesystemassertions 禁用所有系统类中的断言
-dsa 禁用所有系统类中的断言
-enableassertions[:[packagename]...|:classname] 启用断言。默认情况下,在所有包和类中禁用断言。
-ea[:[packagename]...|:classname] 启用断言。默认情况下,在所有包和类中禁用断言。
-enablesystemassertions 在所有系统类中启用断言
-esa 在所有系统类中启用断言
-help | -? 显示java命令的使用信息,而不实际运行JVM
-jar filename 执行封装在JAR文件中的程序。该文件名参数是与包含在形成一条线的清单JAR文件的名称Main-Class:classname,定义与类public static void main(String[] args)充当应用程序的出发点方法
-javaagent:jarpath[=options] 加载指定的Java编程语言代理程序。有关检测Java应用程序的更多信息,请参阅java.lang.instrumentJava API文档中的包描述
-jre-restrict-search 在版本搜索中包含用户私有JRE
-no-jre-restrict-search 从版本搜索中排除用户私有JRE
-server 选择Java HotSpot Server VM。64位版本的JDK仅支持服务器VM,因此在这种情况下,该选项是隐式的
-showversion 显示版本信息并继续执行应用程序。此选项等同于该-version选项,但后者指示JVM在显示版本信息后退出
-splash:imgname

使用imgname指定的图像显示启动画面。例如,要在启动应用程序时显示目录中的splash.gif文件images,请使用以下选项:-splash:图像/ splash.gif

-verbose:class 显示有关每个已加载类的信息
-verbose:gc 显示有关每个垃圾回收(GC)事件的信息
-verbose:jni 显示有关使用本机方法和其他Java Native Interface(JNI)活动的信息
-version 显示版本信息,然后退出。此选项等同于该-showversion选项,但后者在显示版本信息后不指示JVM退出
-version:release 指定用于运行应用程序的发行版本。如果java调用的命令版本不符合此规范并且在系统上找到适当的实现,则将使用适当的实现

 

非标准选项

参数 描述

-X

显示所有可用-X选项的帮助

-Xbatch

禁用后台编译。默认情况下,JVM将该方法编译为后台任务,以解释器模式运行该方法,直到后台编译完成。该-Xbatch标志禁用后台编译,以便所有方法的编译作为前台任务继续进行,直到完成。

此选项相当于-XX:-BackgroundCompilation

 

 

 

-Xbootclasspath:path

 

指定由分号(;)分隔的目录,JAR文件和ZIP存档的列表,以搜索引导类文件。这些用于代替JDK中包含的引导类文件。

不要部署使用此选项的应用程序覆盖类rt.jar,因为这违反了JRE二进制代码许可证

-Xbootclasspath/a:path

指定由分号(;)分隔的目录,JAR文件和ZIP存档的列表,以附加到默认引导程序类路径的末尾。

不要部署使用此选项的应用程序覆盖类rt.jar,因为这违反了JRE二进制代码许可证

-Xbootclasspath/p:path

指定由分号(;)分隔的目录,JAR文件和ZIP存档的列表,以预先添加到默认引导程序类路径的前面。

不要部署使用此选项的应用程序覆盖类rt.jar,因为这违反了JRE二进制代码许可证

-Xcheck:jni

对Java Native Interface(JNI)函数执行其他检查。具体来说,它在处理JNI请求之前验证传递给JNI函数的参数和运行时环境数据。遇到的任何无效数据都表明本机代码存在问题,在这种情况下,JVM将以无法恢复的错误终止。使用此选项时,预计性能会下降

-Xcomp

在第一次调用时强制编译方法。默认情况下,客户端VM(-client)执行1,000个已解释的方法调用,Server VM(-server)执行10,000个已解释的方法调用以收集有效编译的信息。指定该-Xcomp选项会禁用已解释的方法调用,从而以牺牲效率为代价来提高编译性能。

您还可以使用该-XX:CompileThreshold选项在编译之前更改已解释的方法调用的数量

-Xdebug

什么也没做。提供向后兼容性

-Xdiag

显示其他诊断消息

-Xfuture

启用严格的类文件格式检查,以强制与类文件格式规范紧密一致。鼓励开发人员在开发新代码时使用此标志,因为更严格的检查将成为未来版本中的默认值

-Xint

以仅解释模式运行应用程序。禁用对本机代码的编译,并且解释器将执行所有字节码。暂时(JIT)编译器提供的性能优势在此模式下不存在

-Xinternalversion

显示比该-version选项更详细的JVM版本信息,然后退出

-Xloggc:filename

设置应将重定向的GC事件信息重定向到的文件以进行日志记录。写入此文件的信息类似于-verbose:gc自每个记录事件之前的第一个GC事件以来经过的时间的输出。如果两者都使用相同的命令,则该-Xloggc选项将覆盖。-verbose:gcjava

-Xmaxjitcodesize = size

指定JIT编译代码的最大代码高速缓存大小(以字节为单位)。附加字母kK表示千字节,mM指示兆字节,gG指示千兆字节。默认的最大代码缓存大小为240 MB; 如果使用该选项禁用分层编译-XX:-TieredCompilation,则默认大小为48 MB:-Xmaxjitcodesize =240米

此选项相当于-XX:ReservedCodeCacheSize

-Xmixed

除了热方法之外,解释器执行所有字节码,热方法被编译为本机代码

-Xmnsize

设置年轻代(托儿所)的堆的初始和最大大小(以字节为单位)。附加字母kK表示千字节,mM指示兆字节,gG指示千兆字节

-Xmssize

设置堆的初始大小(以字节为单位)。该值必须是1024的倍数且大于1 MB。附加字母kK表示千字节,mM指示兆字节,gG指示千兆字节

-Xmxsize

指定内存分配池的最大大小(以字节为单位),以字节为单位。该值必须是1024的倍数且大于2 MB。附加字母k或K表示千字节,m或M指示兆字节,g或G指示千兆字节。根据系统配置在运行时选择默认值。对于服务器部署,-Xms并-Xmx经常设置为相同的值。请参阅Java SE HotSpot虚拟机垃圾收集调整指南中的“人体工程学”部分
-Xnoclassgc

禁用类的垃圾收集(GC)。这可以节省一些GC时间,从而缩短应用程序运行期间的中断。

-Xnoclassgc在启动时指定时,应用程序中的类对象将在GC期间保持不变,并始终被视为实时。这可能导致更多的内存被永久占用,如果不小心使用,将导致内存不足异常

-Xprof 配置正在运行的程序并将分析数据发送到标准输出。此选项作为在程序开发中有用的实用程序提供,不适用于生产系统
-Xrs 减少JVM对操作系统信号的使用
-Xshare:mode

设置类数据共享(CDS)模式。此选项的可能模式参数包括以下内容:

auto

尽可能使用CDS。这是Java HotSpot 32位客户端VM的默认值。

on

需要使用CDS。如果无法使用类数据共享,则打印错误消息并退出。

off

不要使用CDS。这是Java HotSpot 32位服务器VM,Java HotSpot 64位客户端VM和Java HotSpot 64位服务器VM的默认值。

dump

手动生成CDS存档。按照“设置类路径”中的说明指定应用程序类路径。

-XshowSettings:category

显示设置并继续。此选项的可能类别参数包括以下内容:

all

显示所有类别的设置。这是默认值。

locale

显示与区域设置相关的设置。

properties

显示与系统属性相关的设置。

VM

显示JVM的设置。

-Xsssize 设置线程堆栈大小(以字节为单位)。附加字母kK表示KB,mM表示MB,gG表示GB。默认值取决于虚拟内存
-Xverify:mode

设置字节码验证器的模式。字节码验证可确保正确形成类文件,并满足“Java虚拟机规范”中第4.10节“ class文件验证”中列出的约束。

不要关闭验证,因为这会减少Java提供的保护,并可能由于格式错误的类文件而导致问题。

此选项的可能模式参数包括以下内容:

remote

验证引导类加载器未加载的所有字节码。如果未指定该-Xverify选项,则这是默认行为。

all

启用所有字节码的验证。

none

禁用所有字节码的验证。使用-Xverify:none不受支持。

 

高级运行时选项(以下部分与java虚拟机参数详细列表那篇有相同的)

参数 描述

-XX:+CheckEndorsedAndExtDirs

java如果命令使用了endorsed-standards override机制或扩展机制,则启用该选项以阻止命令运行Java应用程序。此选项通过检查以下内容来检查应用程序是否正在使用这些机制之一:

java.ext.dirsjava.e

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值