What does -Xms and -Xmx stands for in Java?


-Xms and -Xmx is Virtual Machine (VM) arguments that can be used while executing Java applications to make set the minimum and maximum heap size.

You can know more about all the VM arguments by executing the command in Command-Line or Terminal using java -X command

bash-3.2$ java -X

    -Xbatch           disable background compilation
    -Xbootclasspath/a:
                      append to end of bootstrap classpath
    -Xcheck:jni       perform additional checks for JNI functions
    -Xcomp            forces compilation of methods on the first invocation
    -Xdebug           provided for backward compatibility
    -Xdiag            show additional diagnostic messages
    -Xfuture          enable strictest checks, anticipating future default
    -Xint             interpreted mode execution-only
    -Xinternalversion
                      displays more detailed JVM version information than the
                      -version option
    -Xloggc:    log GC status to a file with time stamps
    -Xmixed           mixed-mode execution (default)
    -Xmn        sets the initial and maximum size (in bytes) of the heap
                      for the young generation (nursery)
    -Xms        set initial Java heap size
    -Xmx        set maximum Java heap size
    -Xnoclassgc       disable class garbage collection
    -Xrs              reduce the use of OS signals by Java/VM (see documentation)
    -Xshare:auto      use shared class data if possible (default)
    -Xshare:off       do not attempt to use shared class data
    -Xshare:on require using shared class data, otherwise fail.
    -XshowSettings    show all settings and continue


These extra options are subject to change without notice.


The following options are Mac OS X specific:
    -XstartOnFirstThread
                      run the main() method on the first (AppKit) thread
    -Xdock:name=
                      override default application name displayed in dock
    -Xdock:icon=
                      override default icon displayed in dock



Recent Posts:




Code2care is an initiative to publish and share varied knowledge in programming and technical areas gathered during day-to-day learnings and development activities.

Students and Software Developers can leverage this portal to find solutions to their various queries without re-inventing the wheel by referring to our easy to understand posts. Technical posts might include Learnings, Video Tutorials, Code Snippets, How Tos, Blogs, Articles, etc.