我真的不知道如何使用jsp -Joption。我得到如下描述


  选项
         jps命令支持许多用于修改命令输出的选项。这些选项可能会在
         未来。


   -q             Suppress the output of the class name, JAR file name, and arguments passed to the main method,  producing  only  a  list  of
                  local VM identifiers.

   -m             Output the arguments passed to the main method. The output may be null for embedded JVMs.

   -l             Output the full package name for the application's main class or the full path name to the application's JAR file.

   -v             Output the arguments passed to the JVM.

   -V             Output  the  arguments  passed  to  the  JVM  through  the  flags  file  (the  .hotspotrc  file or the file specified by the
                  -XX:Flags=<filename> argument).

   -Joption       Pass option to the java launcher called by javac. For example, -J-Xms48m sets the startup memory to 48 megabytes.  It  is  a
                  common convention for -J to pass options to the underlying VM executing applications written in Java.


实际上,我不知道什么是java launcher called by javac,当我运行jps -J-Xms48m示例时,与使用jps一样。那么,这个选项有什么用呢?谢谢。

最佳答案

Java开发工具(例如jpsjstatjstackjmap等)都是用Java编写的。就像常规Java程序一样,它们需要Java Runtime Environment,即它们在JVM下运行。

-J选项不会直接影响jps工具,而是会影响运行该工具的JVM。例如。 -J-Xms48M选项意味着jps将启动Java虚拟机,其初始堆大小为48 MB。

例如,比较jps -J-XX:+PrintGCDetailsjps -J-Xms48M -J-XX:+PrintGCDetails

关于java - 如何使用jps -Joption,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48543458/

10-12 04:15