官方文档:https://docs.oracle.com/en/java/javase/14/docs/specs/man/jinfo.html
jinfo命令打印指定JVM进程的配置信息,包括Java系统属性(System.getProperties)以及JVM运行时所指定的JVM参数。jinfo可以使用-sysprops将JVM进程中所指定的System.getProperties的内容打印出来。jinfo可以查看未被显式指定的JVM参数的系统默认值,jps -v 只能查看显式指定的JVM参数。jinfo还能在运行期修改一部分JVM参数。
注意:使用时请注意自己的jdk版本,openJDk1.8部分命令会报错,请使用oracleJDK!
jinfo命令的用法
用法示例
1.查看JVM进程系统配置:jinfo -sysprops pid (openjdk1.8版本无法使用,有bug,会报异常:Caused by: java.lang.InternalError: Metadata does not appear to be polymorphic,oraclejdk无此问题)
2.查看JVM参数:jinfo -flags pid
3.查看指定JVM参数名的设置:jinfo -flag MaxHeapSize pid (只保留冒号后面的名称,比如这里查看-XX:MaxHeapSize ,就使用MaxHeapSize 就可以了)
4.运行时动态设置JVM参数值:jinfo -flag MaxHeapSize=1g pid (JVM很多参数在运行期间都不能修改,比如-XX:MaxHeapSize)
5.打印所有的信息:jinfo pid