1JCMD(1)                          JDK Commands                          JCMD(1)
2
3
4

NAME

6       jcmd  -  send diagnostic command requests to a running Java Virtual Ma‐
7       chine (JVM)
8

SYNOPSIS

10       jcmd [pid | main-class] command...  | PerfCounter.print | -f filename
11
12       jcmd [-l]
13
14       jcmd -h
15
16       pid    When used, the jcmd utility sends the diagnostic command request
17              to the process ID for the Java process.
18
19       main-class
20              When used, the jcmd utility sends the diagnostic command request
21              to all Java processes with the specified name of the main class.
22
23       command
24              The command must be a valid jcmd command for the  selected  JVM.
25              The  list  of available commands for jcmd is obtained by running
26              the help command (jcmd pid help) where pid is the process ID for
27              the  running  Java  process.   If the pid is 0, commands will be
28              sent to all Java processes.  The main  class  argument  will  be
29              used  to  match,  either  partially  or fully, the class used to
30              start Java.  If no options are given, it lists the running  Java
31              process  identifiers  with the main class and command-line argu‐
32              ments that were used to launch the process (the  same  as  using
33              -l).
34
35       Perfcounter.print
36              Prints  the  performance  counters exposed by the specified Java
37              process.
38
39       -f filename
40              Reads and executes commands from a specified file, filename.
41
42       -l     Displays the list of Java Virtual  Machine  process  identifiers
43              that are not running in a separate docker process along with the
44              main class and command-line arguments that were used  to  launch
45              the  process.   If  the JVM is in a docker process, you must use
46              tools such as ps to look up the PID.
47
48              Note:
49
50              Using jcmd without arguments is the same as using jcmd -l.
51
52       -h     Displays the jcmd utility's command-line help.
53

DESCRIPTION

55       The jcmd utility is used to send diagnostic  command  requests  to  the
56       JVM.   It must be used on the same machine on which the JVM is running,
57       and have the same effective user and group identifiers that  were  used
58       to  launch  the  JVM.  Each diagnostic command has its own set of argu‐
59       ments.  To display the description, syntax, and a list of available ar‐
60       guments  for  a  diagnostic command, use the name of the command as the
61       argument.  For example:
62
63              jcmd pid help command
64
65       If arguments contain spaces, then you must surround them with single or
66       double  quotation  marks (' or ").  In addition, you must escape single
67       or double quotation marks with a backslash (\) to prevent the operating
68       system  shell  from processing quotation marks.  Alternatively, you can
69       surround these arguments with single quotation marks and then with dou‐
70       ble  quotation marks (or with double quotation marks and then with sin‐
71       gle quotation marks).
72
73       If  you  specify  the  process  identifier  (pid)  or  the  main  class
74       (main-class) as the first argument, then the jcmd utility sends the di‐
75       agnostic command request to the Java process with the specified identi‐
76       fier  or  to  all  Java  processes  with the specified name of the main
77       class.  You can also send the diagnostic command request to all  avail‐
78       able Java processes by specifying 0 as the process identifier.
79

COMMANDS FOR JCMD

81       The  command  must  be a valid jcmd diagnostic command for the selected
82       JVM.  The list of available commands for jcmd is  obtained  by  running
83       the help command (jcmd pid help) where pid is the process ID for a run‐
84       ning Java process.  If the pid is 0, commands will be sent to all  Java
85       processes.   The main class argument will be used to match, either par‐
86       tially or fully, the class used to start Java.  If no options are  giv‐
87       en, it lists the running Java process identifiers that are not in sepa‐
88       rate docker processes along with the main class and command-line  argu‐
89       ments that were used to launch the process (the same as using -l).
90
91       The following commands are available:
92
93       help [options] [arguments]
94              For more information about a specific command.
95
96              arguments:
97
98              · command  name:  The name of the command for which we want help
99                (STRING, no default value)
100
101              Note:
102
103              The following options must be  specified  using  either  key  or
104              key=value syntax.
105
106              options:
107
108              · -all: (Optional) Show help for all commands (BOOLEAN, false) .
109
110       Compiler.codecache
111              Prints code cache layout and bounds.
112
113              Impact: Low
114
115              Permission: java.lang.management.ManagementPermission(monitor)
116
117       Compiler.codelist
118              Prints all compiled methods in code cache that are alive.
119
120              Impact: Medium
121
122              Permission: java.lang.management.ManagementPermission(monitor)
123
124       Compiler.queue
125              Prints methods queued for compilation.
126
127              Impact: Low
128
129              Permission: java.lang.management.ManagementPermission(monitor)
130
131       Compiler.directives_add *filename* *arguments*
132              Adds compiler directives from a file.
133
134              Impact: Low
135
136              Permission: java.lang.management.ManagementPermission(monitor)
137
138              arguments:
139
140              filename:  The  name  of the directives file (STRING, no default
141              value)
142
143       Compiler.directives_clear
144              Remove all compiler directives.
145
146              Impact: Low
147
148              Permission: java.lang.management.ManagementPermission(monitor)
149
150       Compiler.directives_print
151              Prints all active compiler directives.
152
153              Impact: Low
154
155              Permission: java.lang.management.ManagementPermission(monitor)
156
157       Compiler.directives_remove
158              Remove latest added compiler directive.
159
160              Impact: Low
161
162              Permission: java.lang.management.ManagementPermission(monitor)
163
164       GC.class_histogram [options]
165              Provides statistics about the Java heap usage.
166
167              Impact: High --- depends on Java heap size and content.
168
169              Permission: java.lang.management.ManagementPermission(monitor)
170
171              Note:
172
173              The options must be specified using either key or key=value syn‐
174              tax.
175
176              options:
177
178              · -all:  (Optional)  Inspects all objects, including unreachable
179                objects (BOOLEAN, false)
180
181       GC.class_stats [options] [arguments]
182              (Deprecated) Provide statistics about Java class meta data.
183
184              Impact: High --- depends on Java heap size and content.
185
186              Note:
187
188              The options must be specified using either key or key=value syn‐
189              tax.
190
191              options:
192
193              · -all: (Optional) Shows all columns (BOOLEAN, false)
194
195              · -csv: (Optional) Prints in CSV (comma-separated values) format
196                for spreadsheets (BOOLEAN, false)
197
198              · -help: (Optional) Shows the meaning of all the columns  (BOOL‐
199                EAN, false)
200
201              arguments:
202
203              · columns: (Optional) Comma-separated list of all the columns to
204                be shown.  If not specified, the following columns are shown:
205
206                · InstBytes
207
208                · KlassBytes
209
210                · CpAll
211
212                · annotations
213
214                · MethodCount
215
216                · Bytecodes
217
218                · MethodAll
219
220                · ROAll
221
222                · RWAll
223
224                · Total
225
226                (STRING, no default value)
227
228       GC.finalizer_info
229              Provides information about the Java finalization queue.
230
231              Impact: Medium
232
233              Permission: java.lang.management.ManagementPermission(monitor)
234
235       GC.heap_dump [options] [arguments]
236              Generates a HPROF format dump of the Java heap.
237
238              Impact: High --- depends on the Java heap size and content.  Re‐
239              quest a full GC unless the -all option is specified.
240
241              Permission: java.lang.management.ManagementPermission(monitor)
242
243              Note:
244
245              The  following  options  must  be  specified using either key or
246              key=value syntax.
247
248              options:
249
250              · -all: (Optional) Dump all objects, including  unreachable  ob‐
251                jects (BOOLEAN, false)
252
253              arguments:
254
255              · filename: The name of the dump file (STRING, no default value)
256
257       GC.heap_info
258              Provides generic Java heap information.
259
260              Impact: Medium
261
262              Permission: java.lang.management.ManagementPermission(monitor)
263
264       GC.run Calls java.lang.System.gc().
265
266              Impact: Medium --- depends on the Java heap size and content.
267
268       GC.run_finalization
269              Calls java.lang.System.runFinalization().
270
271              Impact: Medium --- depends on the Java content.
272
273       JFR.check [options]
274              Show information about a running flight recording
275
276              Impact: Low
277
278              Note:
279
280              The options must be specified using either key or key=value syn‐
281              tax.  If no parameters are entered, information for  all  active
282              recordings is shown.
283
284              options:
285
286              · name:  (Optional)  Name  of the flight recording.  (STRING, no
287                default value)
288
289              · verbose: (Optional) Flag for printing the event  settings  for
290                the recording (BOOLEAN, false)
291
292       JFR.configure [options]
293              Set the parameters for a flight recording
294
295              Impact: Low
296
297              Note:
298
299              The options must be specified using either key or key=value syn‐
300              tax.  If no parameters are entered,  the  current  settings  are
301              displayed.
302
303              options:
304
305              · globalbuffercount:  (Optional) Number of global buffers.  This
306                option is a legacy option: change the memorysize parameter  to
307                alter  the  number  of  global  buffers.  This value cannot be
308                changed once JFR has been initalized.  (STRING, default deter‐
309                mined by the value for memorysize)
310
311              · globalbuffersize:  (Optional)  Size  of the global buffers, in
312                bytes.  This option is a legacy option: change the  memorysize
313                parameter to alter the size of the global buffers.  This value
314                cannot be changed once JFR has been initalized.  (STRING,  de‐
315                fault determined by the value for memorysize)
316
317              · maxchunksize:  (Optional)  Maximum  size of an individual data
318                chunk in bytes if one of the following suffixes is  not  used:
319                'm'  or  'M'  for megabytes OR 'g' or 'G' for gigabytes.  This
320                value  cannot  be  changed  once  JFR  has  been  initialized.
321                (STRING, 12M)
322
323              · memorysize: (Optional) Overall memory size, in bytes if one of
324                the following suffixes is not used: 'm' or 'M'  for  megabytes
325                OR  'g'  or  'G'  for gigabytes.  This value cannot be changed
326                once JFR has been initialized.  (STRING, 10M)
327
328              · repositorypath: (Optional) Path to the location where  record‐
329                ings  are  stored  until they are written to a permanent file.
330                (STRING, The default location is the temporary  directory  for
331                the  operating system.  On Linux operating systems, the tempo‐
332                rary directory is /tmp.  On Windwows, the temporary  directory
333                is specified by the TMP environment variable.)
334
335              · stackdepth:  (Optional) Stack depth for stack traces.  Setting
336                this value greater than the default of 64 may cause a  perfor‐
337                mance  degradation.  This value cannot be changed once JFR has
338                been initialized.  (LONG, 64)
339
340              · thread_buffer_size: (Optional)  Local  buffer  size  for  each
341                thread  in bytes if one of the following suffixes is not used:
342                'k' or 'K' for kilobytes or 'm' or 'M' for  megabytes.   Over‐
343                riding this parameter could reduce performance and is not rec‐
344                ommended.  This value cannot be changed once JFR has been ini‐
345                tialized.  (STRING, 8k)
346
347              · samplethreads: (Optional) Flag for activating thread sampling.
348                (BOOLEAN, true)
349
350       JFR.dump [options]
351              Write data to a file while a flight recording is running
352
353              Impact: Low
354
355              Note:
356
357              The options must be specified using either key or key=value syn‐
358              tax.   No  options are required.  The recording continues to run
359              after the data is written.
360
361              options:
362
363              · begin: (Optional) Specify the time from which  recording  data
364                will be included in the dump file.  The format is specified as
365                local time.  (STRING, no default value)
366
367              · end: (Optional) Specify the time to which recording data  will
368                be  included in the dump file.  The format is specified as lo‐
369                cal time.  (STRING, no default value)
370
371                Note: For both begin and end, the time must  be  in  a  format
372                that  can  be  read by java.time.LocalTime::parse(STRING), ja‐
373                va.time.LocalDateTime::parse(STRING)     or      java.time.In‐
374                stant::parse(STRING).       For      example,      "13:20:15",
375                "2020-03-17T09:00:00" or "2020-03-17T09:00:00Z".
376
377                Note: begin and end times correspond to the  timestamps  found
378                within the recorded information in the flight recording data.
379
380                Another  option  is to use a time relative to the current time
381                that is specified by a negative integer followed by  "s",  "m"
382                or "h".  For example, "-12h", "-15m" or "-30s"
383
384              · filename:  (Optional)  Name  of  the  file to which the flight
385                recording data is dumped.  If no filename is given, a filename
386                is  generated from the PID and the current date.  The filename
387                may also be a directory in which case, the filename is  gener‐
388                ated from the PID and the current date in the specified direc‐
389                tory.  (STRING, no default value)
390
391              · maxage: (Optional) Length  of  time  for  dumping  the  flight
392                recording  data  to a file.  (INTEGER followed by 's' for sec‐
393                onds 'm' for minutes or 'h' for hours, no default value)
394
395              · maxsize: (Optional) Maximum size for the  amount  of  data  to
396                dump  from a flight recording in bytes if one of the following
397                suffixes is not used: 'm' or 'M' for megabytes OR 'g'  or  'G'
398                for gigabytes.  (STRING, no default value)
399
400              · name:  (Optional) Name of the recording.  If no name is given,
401                data from all recordings is dumped.  (STRING, no default  val‐
402                ue)
403
404              · path-to-gc-root:  (Optional)  Flag  for  saving  the  path  to
405                garbage collection (GC) roots at the time the  recording  data
406                is  dumped.  The path information is useful for finding memory
407                leaks but collecting it can cause the application to pause for
408                a  short period of time.  Turn on this flag only when you have
409                an application that you suspect has a memory leak.   (BOOLEAN,
410                false)
411
412       JFR.start [options]
413              Start a flight recording
414
415              Impact: Low
416
417              Note:
418
419              The options must be specified using either key or key=value syn‐
420              tax.  If no parameters are entered, then a recording is  started
421              with default values.
422
423              options:
424
425              · delay:  (Optional)  Length  of time to wait before starting to
426                record (INTEGER followed by 's' for seconds 'm' for minutes or
427                'h' for hours, 0s)
428
429              · disk:  (Optional) Flag for also writing the data to disk while
430                recording (BOOLEAN, true)
431
432              · dumponexit: (Optional) Flag for writing the recording to  disk
433                when  the  Java  Virtual  Machine (JVM) shuts down.  If set to
434                'true' and no value is given for filename,  the  recording  is
435                written  to  a  file  in  the  directory where the process was
436                started.  The file name is a system-generated name  that  con‐
437                tains  the  process  ID, the recording ID and the current time
438                stamp.   (For  example:  id-1-2019_12_12_10_41.jfr)  (BOOLEAN,
439                false)
440
441              · duration:  (Optional)  Length of time to record.  Note that 0s
442                means forever (INTEGER followed by 's'  for  seconds  'm'  for
443                minutes or 'h' for hours, 0s)
444
445              · filename:  (Optional)  Name  of  the  file to which the flight
446                recording data is written when the recording is  stopped.   If
447                no filename is given, a filename is generated from the PID and
448                the current date and is placed  in  the  directory  where  the
449                process  was started.  The filename may also be a directory in
450                which case, the filename is generated from  the  PID  and  the
451                current  date in the specified directory.  (STRING, no default
452                value)
453
454              · maxage: (Optional) Maximum time to keep the recorded  data  on
455                disk.  This parameter is valid only when the disk parameter is
456                set to true.  Note 0s means forever.  (INTEGER followed by 's'
457                for seconds 'm' for minutes or 'h' for hours, 0s)
458
459              · maxsize:  (Optional)  Maximum size of the data to keep on disk
460                in bytes if one of the following suffixes is not used: 'm'  or
461                'M' for megabytes OR 'g' or 'G' for gigabytes.  This parameter
462                is valid only when the disk parameter is set to  'true'.   The
463                value must not be less than the value for the maxchunksize pa‐
464                rameter set with the JFR.configure command.   (STRING,  0  (no
465                maximum size))
466
467              · name: (Optional) Name of the recording.  If no name is provid‐
468                ed, a name is generated.  Make note of the generated name that
469                is shown in the response to the command so that you can use it
470                with other commands.  (STRING, system-generated default name)
471
472              · path-to-gc-root:  (Optional)  Flag  for  saving  the  path  to
473                garbage  collection (GC) roots at the end of a recording.  The
474                path information is useful for finding memory leaks  but  col‐
475                lecting it is time consuming.  Turn on this flag only when you
476                have an application that you suspect has a  memory  leak.   If
477                the  settings parameter is set to 'profile', then the informa‐
478                tion collected includes the stack trace from where the  poten‐
479                tial leaking object was allocated.  (BOOLEAN, false)
480
481              · settings: (Optional) Name of the settings file that identifies
482                which events to record.  To specify more than one file,  sepa‐
483                rate  the  names  with a comma (',').  Include the path if the
484                file is not in JAVA-HOME/lib/jfr.  The following profiles  are
485                included with the JDK in the JAVA-HOME/lib/jfr directory: 'de‐
486                fault.jfc': collects a predefined set of information with  low
487                overhead,  so  it has minimal impact on performance and can be
488                used with recordings  that  run  continuously;  'profile.jfc':
489                Provides  more  data  than the 'default.jfc' profile, but with
490                more overhead and impact on performance.  Use this  configura‐
491                tion  for short periods of time when more information is need‐
492                ed.  Use none to start a recording without a  predefined  con‐
493                figuration file.  (STRING, JAVA-HOME/lib/jfr/default.jfc)
494
495       JFR.stop [options]
496              Stop a flight recording
497
498              Impact: Low
499
500              Note:
501
502              The options must be specified using either key or key=value syn‐
503              tax.  If  no  parameters  are  entered,  then  no  recording  is
504              stopped.
505
506              options:
507
508              · filename:  (Optional)  Name of the file to which the recording
509                is written when the recording is stopped.  If no path is  pro‐
510                vided,  the data from the recording is discarded.  (STRING, no
511                default value)
512
513              · name: (Optional) Name of the  recording  (STRING,  no  default
514                value)
515
516       JVMTI.agent_load [arguments]
517              Loads JVMTI native agent.
518
519              Impact: Low
520
521              Permission: java.lang.management.ManagementPermission(control)
522
523              arguments:
524
525              · library  path:  Absolute  path  of  the  JVMTI  agent to load.
526                (STRING, no default value)
527
528              · agent option: (Optional) Option  string  to  pass  the  agent.
529                (STRING, no default value)
530
531       JVMTI.data_dump
532              Signals the JVM to do a data-dump request for JVMTI.
533
534              Impact: High
535
536              Permission: java.lang.management.ManagementPermission(monitor)
537
538       ManagementAgent.start [options]
539              Starts remote management agent.
540
541              Impact: Low --- no impact
542
543              Note:
544
545              The  following  options  must  be  specified using either key or
546              key=value syntax.
547
548              options:
549
550              · config.file:  (Optional)  Sets  com.sun.management.config.file
551                (STRING, no default value)
552
553              · jmxremote.host:   (Optional)   Sets  com.sun.management.jmxre‐
554                mote.host (STRING, no default value)
555
556              · jmxremote.port:  (Optional)   Sets   com.sun.management.jmxre‐
557                mote.port (STRING, no default value)
558
559              · jmxremote.rmi.port:  (Optional) Sets com.sun.management.jmxre‐
560                mote.rmi.port (STRING, no default value)
561
562              · jmxremote.ssl:   (Optional)   Sets   com.sun.management.jmxre‐
563                mote.ssl (STRING, no default value)
564
565              · jmxremote.registry.ssl:    (Optional)   Sets   com.sun.manage‐
566                ment.jmxremote.registry.ssl (STRING, no default value)
567
568              · jmxremote.authenticate:   (Optional)   Sets    com.sun.manage‐
569                ment.jmxremote.authenticate (STRING, no default value)
570
571              · jmxremote.password.file:   (Optional)   Sets   com.sun.manage‐
572                ment.jmxremote.password.file (STRING, no default value)
573
574              · jmxremote.access.file:   (Optional)    Sets    com.sun.manage‐
575                ment.jmxremote.acce ss.file (STRING, no default value)
576
577              · jmxremote.login.config:    (Optional)   Sets   com.sun.manage‐
578                ment.jmxremote.log in.config (STRING, no default value)
579
580              · jmxremote.ssl.enabled.cipher.suites:      (Optional)      Sets
581                com.sun.management.
582
583              · jmxremote.ssl.enabled.cipher.suite: (STRING, no default value)
584
585              · jmxremote.ssl.enabled.protocols:  (Optional) Sets com.sun.man‐
586                agement.jmxr emote.ssl.enabled.protocols (STRING,  no  default
587                value)
588
589              · jmxremote.ssl.need.client.auth:  (Optional)  Sets com.sun.man‐
590                agement.jmxre mote.need.client.auth (STRING, no default value)
591
592              · jmxremote.ssl.config.file:  (Optional)  Sets   com.sun.manage‐
593                ment.jmxremote. ssl_config_file (STRING, no default value)
594
595              · jmxremote.autodiscovery:   (Optional)   Sets   com.sun.manage‐
596                ment.jmxremote.au todiscovery (STRING, no default value)
597
598              · jdp.port: (Optional) Sets com.sun.management.jdp.port (INT, no
599                default value)
600
601              · jdp.address:  (Optional)  Sets  com.sun.management.jdp.address
602                (STRING, no default value)
603
604              · jdp.source_addr:     (Optional)      Sets      com.sun.manage‐
605                ment.jdp.source_addr (STRING, no default value)
606
607              · jdp.ttl:  (Optional)  Sets com.sun.management.jdp.ttl (INT, no
608                default value)
609
610              · jdp.pause: (Optional) Sets com.sun.management.jdp.pause  (INT,
611                no default value)
612
613              · jdp.name: (Optional) Sets com.sun.management.jdp.name (STRING,
614                no default value)
615
616       ManagementAgent.start_local
617              Starts the local management agent.
618
619              Impact: Low --- no impact
620
621       ManagementAgent.status
622              Print the management agent status.
623
624              Impact: Low --- no impact
625
626              Permission: java.lang.management.ManagementPermission(monitor)
627
628       ManagementAgent.stop
629              Stops the remote management agent.
630
631              Impact: Low --- no impact
632
633       Thread.print [options]
634              Prints all threads with stacktraces.
635
636              Impact: Medium --- depends on the number of threads.
637
638              Permission: java.lang.management.ManagementPermission(monitor)
639
640              Note:
641
642              The following options must be  specified  using  either  key  or
643              key=value syntax.
644
645              options:
646
647              · -l:  (Optional)  Prints  java.util.concurrent  locks (BOOLEAN,
648                false)
649
650       VM.classloader_stats
651              Prints statistics about all ClassLoaders.
652
653              Impact: Low
654
655              Permission: java.lang.management.ManagementPermission(monitor)
656
657       VM.class_hierarchy [options] [arguments]
658              Prints a list of all loaded classes, indented to show the  class
659              hierarchy.  The name of each class is followed by the ClassLoad‐
660              erData* of its ClassLoader, or "null" if it  is  loaded  by  the
661              bootstrap class loader.
662
663              Impact: Medium --- depends on the number of loaded classes.
664
665              Permission: java.lang.management.ManagementPermission(monitor)
666
667              Note:
668
669              The  following  options  must  be  specified using either key or
670              key=value syntax.
671
672              options:
673
674              · -i: (Optional) Inherited interfaces should be printed.  (BOOL‐
675                EAN, false)
676
677              · -s:  (Optional)  If  a  class name is specified, it prints the
678                subclasses.  If the class name is not specified, only the  su‐
679                perclasses are printed.  (BOOLEAN, false)
680
681              arguments:
682
683              · classname:  (Optional)  The  name of the class whose hierarchy
684                should be printed.  If not specified,  all  class  hierarchies
685                are printed.  (STRING, no default value)
686
687       VM.command_line
688              Prints the command line used to start this VM instance.
689
690              Impact: Low
691
692              Permission: java.lang.management.ManagementPermission(monitor)
693
694       VM.dynlibs
695              Prints the loaded dynamic libraries.
696
697              Impact: Low
698
699              Permission: java.lang.management.ManagementPermission(monitor)
700
701       VM.info
702              Prints information about the JVM environment and status.
703
704              Impact: Low
705
706              Permission: java.lang.management.ManagementPermission(monitor)
707
708       VM.log [options]
709              Lists  current  log configuration, enables/disables/configures a
710              log output, or ro tates all logs.
711
712              Impact: Low
713
714              Permission: java.lang.management.ManagementPermission(control)
715
716              options:
717
718              Note:
719
720              The following options must be  specified  using  either  key  or
721              key=value syntax.
722
723              · output:  (Optional) The name or index (#) of output to config‐
724                ure.  (STRING, no default value)
725
726              · output_options: (Optional) Options for the  output.   (STRING,
727                no default value)
728
729              · what: (Optional) Configures what tags to log.  (STRING, no de‐
730                fault value )
731
732              · decorators: (Optional) Configures  which  decorators  to  use.
733                Use  'none'  or an empty value to remove all.  (STRING, no de‐
734                fault value)
735
736              · disable: (Optional) Turns off all logging and clears  the  log
737                configuration.  (BOOLEAN, no default value)
738
739              · list:  (Optional)  Lists current log configuration.  (BOOLEAN,
740                no default value)
741
742              · rotate: (Optional) Rotates all  logs.   (BOOLEAN,  no  default
743                value)
744
745       VM.flags [options]
746              Prints the VM flag options and their current values.
747
748              Impact: Low
749
750              Permission: java.lang.management.ManagementPermission(monitor)
751
752              Note:
753
754              The  following  options  must  be  specified using either key or
755              key=value syntax.
756
757              options:
758
759              · -all: (Optional) Prints all flags supported by the  VM  (BOOL‐
760                EAN, false).
761
762       VM.native_memory [options]
763              Prints native memory usage
764
765              Impact: Medium
766
767              Permission: java.lang.management.ManagementPermission(monitor)
768
769              Note:
770
771              The  following  options  must  be  specified using either key or
772              key=value syntax.
773
774              options:
775
776              · summary: (Optional) Requests runtime to report current  memory
777                summary,  which  includes total reserved and committed memory,
778                along with memory usage summary by each subsystem.   (BOOLEAN,
779                false)
780
781              · detail:  (Optional)  Requests runtime to report memory alloca‐
782                tion >= 1K by each callsite.  (BOOLEAN, false)
783
784              · baseline: (Optional) Requests runtime to baseline current mem‐
785                ory  usage,  so  it  can  be  compared  against in later time.
786                (BOOLEAN, false)
787
788              · summary.diff: (Optional) Requests  runtime  to  report  memory
789                summary   comparison  against  previous  baseline.   (BOOLEAN,
790                false)
791
792              · detail.diff: (Optional) Requests runtime to report memory  de‐
793                tail  comparison  against  previous  baseline, which shows the
794                memory allocation activities at different  callsites.   (BOOL‐
795                EAN, false)
796
797              · shutdown:  (Optional)  Requests runtime to shutdown itself and
798                free the memory used by runtime.  (BOOLEAN, false)
799
800              · statistics: (Optional) Prints tracker  statistics  for  tuning
801                purpose.  (BOOLEAN, false)
802
803              · scale:  (Optional)  Memory  usage in which scale, KB, MB or GB
804                (STRING, KB)
805
806       VM.print_touched_methods
807              Prints all methods that have ever been touched during the  life‐
808              time of this JVM.
809
810              Impact: Medium --- depends on Java content.
811
812       VM.set_flag [arguments]
813              Sets the VM flag option by using the provided value.
814
815              Impact: Low
816
817              Permission: java.lang.management.ManagementPermission(control)
818
819              arguments:
820
821              · flag  name: The name of the flag that you want to set (STRING,
822                no default value)
823
824              · string value: (Optional)  The  value  that  you  want  to  set
825                (STRING, no default value)
826
827       VM.stringtable [options]
828              Dumps the string table.
829
830              Impact: Medium --- depends on the Java content.
831
832              Permission: java.lang.management.ManagementPermission(monitor)
833
834              Note:
835
836              The  following  options  must  be  specified using either key or
837              key=value syntax.
838
839              options:
840
841              · -verbose: (Optional) Dumps the content of each string  in  the
842                table (BOOLEAN, false)
843
844       VM.symboltable [options]
845              Dumps the symbol table.
846
847              Impact: Medium --- depends on the Java content.
848
849              Permission: java.lang.management.ManagementPermission(monitor)
850
851              Note:
852
853              The  following  options  must  be  specified using either key or
854              key=value syntax).
855
856              options:
857
858              · -verbose: (Optional) Dumps the content of each symbol  in  the
859                table (BOOLEAN, false)
860
861       VM.systemdictionary
862              Prints  the statistics for dictionary hashtable sizes and bucket
863              length.
864
865              Impact: Medium
866
867              Permission: java.lang.management.ManagementPermission(monitor)
868
869              Note:
870
871              The following options must be  specified  using  either  key  or
872              key=value syntax.
873
874              options:
875
876              · verbose:  (Optional) Dump the content of each dictionary entry
877                for all class loaders (BOOLEAN, false) .
878
879       VM.system_properties
880              Prints the system properties.
881
882              Impact: Low
883
884              Permission: java.util.PropertyPermission(*, read)
885
886       VM.uptime [options]
887              Prints the VM uptime.
888
889              Impact: Low
890
891              Note:
892
893              The following options must be  specified  using  either  key  or
894              key=value syntax.
895
896              options:
897
898              · -date:  (Optional)  Adds a prefix with the current date (BOOL‐
899                EAN, false)
900
901       VM.version
902              Prints JVM version information.
903
904              Impact: Low
905
906              Permission: java.util.PropertyPermission(java.vm.version, read)
907
908
909
910JDK 14                               2020                              JCMD(1)
Impressum