最近在学习Gradle相关的知识。下载Gradle源码后,未能成功导入IDEA运行。所以想另辟蹊径,通过命令行来调试运行Gradle程序。经过一番搜索和思考。发现Java通过jdwp可以远程调试java程序的。在实践的过程中,对一些命令行参数的含义不是特别清楚。故有此篇文章。 1. java命令 Oracle官方文档链接java命令是用来启动一个Java程序的。 2. 概览java [ options ] class [ arguments ] java [ options ] -jar file.jar [ arguments ] options
class
file.jar
arguments
3. 命令参数详解java命令通过启动Java运行时环境,加载指定的类并调用该类的main方法来启动一个Java应用程序指定的class需要声明一个main方法,格式如下:
如果java命令后面没有option参数,那么紧跟其后的第一个参数就是Class的全路径二进制名。例如 java com.test.Test。如果指定了-jar。那么-jar后面跟的就是个包含了main方法的JAR文件,例如 java -jar Test.jarJava虚拟机启动的时候需要加载启动类和其他需要用到的类。查找的顺序分别是启动类路径,扩展类路径,以及用户类路径。可以通过java -verbose:class查看类加载的顺序Options当前的Java虚拟机支持的Options分成Standard Options和NonStandard Options1. Standard Options-client-server
-agentlib:libname[=options]
-agentpath:pathname[=options]
-cp classpath
-Dproperty=value
-d32-d64
-disableassertions[:package name”…” | :class name ]-da[:package name”…” | :class name ]
-enableassertions[:package name”…” | :class name ]-ea[:package name”…” | :class name ]
-verbose-verbose:class
-verbose:gc
-verbose:jni
2. NonStandard Options-X
-Xint
-Xbatch
-Xnoclassgc
-Xincgc
-Xloggc:file
-Xmnsize or -XX:NewSize
-Xmsn
-Xmxn
-Xprof
-Xssn
-Xverify:mode
-XX:+|-DisableAttachMechanism
-XX:+|-FlightRecorder
-XXLargePageSizeInBytes=nSpecifies the maximum size for large pages. -XX:MaxGCPauseMillis=n
-XX:NewSize
-XX:ParallelGCThreads=n
-XX:+UseConcMarkSweepGC or -XX:+UseG1GC
-XX:+PrintGCDetails -XX:+PrintGCTimeStamps
参考文章 |
|
来自: 好汉勃士 > 《Java的基本概述》