`

java命令详解

    博客分类:
  • Java
阅读更多
JDK工具 java命令详解
一、查看用法
 
C:\>java -help
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
           (to execute a jar file)
 
where options include:
    -client       to select the "client" VM
    -server       to select the "server" VM
    -hotspot      is a synonym for the "client" VM  [deprecated]
                  The default VM is client.
 
    -cp <class search path of directories and zip/jar files>
    -classpath <class search path of directories and zip/jar files>
                  A ; separated list of directories, JAR archives,
                  and ZIP archives to search for class files.
    -D<name>=<value>
                  set a system property
    -verbose[:class|gc|jni]
                  enable verbose output
    -version      print product version and exit
    -version:<value>
                  require the specified version to run
    -showversion  print product version and continue
    -jre-restrict-search | -jre-no-restrict-search
                  include/exclude user private JREs in the version search
    -? -help      print this help message
    -X            print help on non-standard options
    -ea[:<packagename>...|:<classname>]
    -enableassertions[:<packagename>...|:<classname>]
                  enable assertions
    -da[:<packagename>...|:<classname>]
    -disableassertions[:<packagename>...|:<classname>]
                  disable assertions
    -esa | -enablesystemassertions
                  enable system assertions
    -dsa | -disablesystemassertions
                  disable system assertions
    -agentlib:<libname>[=<options>]
                  load native agent library <libname>, e.g. -agentlib:hprof
                    see also, -agentlib:jdwp=help and -agentlib:hprof=help
    -agentpath:<pathname>[=<options>]
                  load native agent library by full pathname
    -javaagent:<jarpath>[=<options>]
                  load Java programming language agent, see java.lang.instrument
 
这个命令帮助是英文的,不知道JDK咋搞的,也不妨碍使用。
 
另外,这个命令的非标准选项也是很重要的,常常在JVM优化配置方面很关键,可以参看本人的JVM参数配置文章。
C:\myproject>java -X
    -Xmixed           mixed mode execution (default)
    -Xint             interpreted mode execution only
    -Xbootclasspath:<directories and zip/jar files separated by ;>
                      set search path for bootstrap classes and resources
    -Xbootclasspath/a:<directories and zip/jar files separated by ;>
                      append to end of bootstrap class path
    -Xbootclasspath/p:<directories and zip/jar files separated by ;>
                      prepend in front of bootstrap class path
    -Xnoclassgc       disable class garbage collection
    -Xincgc           enable incremental garbage collection
    -Xloggc:<file>    log GC status to a file with time stamps
    -Xbatch           disable background compilation
    -Xms<size>        set initial Java heap size
    -Xmx<size>        set maximum Java heap size
    -Xss<size>        set java thread stack size
    -Xprof            output cpu profiling data
    -Xfuture          enable strictest checks, anticipating future default
    -Xrs              reduce use of OS signals by Java/VM (see documentation)
    -Xcheck:jni       perform additional checks for JNI functions
    -Xshare:off       do not attempt to use shared class data
    -Xshare:auto      use shared class data if possible (default)
    -Xshare:on        require using shared class data, otherwise fail.
 
 
二、实践
 
老规矩,主要看看里面的参数(也叫开关)的使用。环境接着上篇javac的环境。
 
 
1、无参数情况
 
2、-cp
运行Java要使用类的全名来运行。如果遇到文件夹,则需要-cp设置到顶级包下面,例如
 
3、-D
设置一个系统属性,在运行时候,可以通过System.getProperties()来获取到。例如写一段代码:
package com.lavasoft;

import java.util.Properties;

/**
* 列举系统的属性
* User: leizhimin
* Date: 2008-11-12 21:25:08
*/
public class TestProperty {
        public static void main(String[] args) {
                //获取系统属性
                Properties prop = System.getProperties();
                //输出所有到一个流上,
                prop.list(System.out);
        }
}
 
 
如果在运行的时候加上一个参数-DmyProp=999999999,注意,中间不要添加任何空格。这样就相当于设置了一个系统属性myProp,其值为999999999。
 
一旦通过-DmyProp=999999999设置了这个系统属性,在程序中就可以获取到这个属性。
 
3、程序入参
是在运行的时候,给main方法传递参数。为了测试先写一个测试类。
package com.lavasoft;

/**
* 测试main方法的入参
* User: leizhimin
* Date: 2008-11-12 21:46:21
*/
public class TestMainVar {
        public static void main(String[] args) {
                System.out.println("入参列表如下:");
                for(String arg:args){
                        System.out.println(arg);
                }
        }
}
 
 
4、其他的选项
有关选择 客户端/服务端VM、版本、运行在哪个版本下、是否使用断言等一些不常用的选项。还可以查看
 
 
5、-verbose[:class|gc|jni]
查看虚拟机内部动作。
 
 
 
分享到:
评论

相关推荐

    java命令详解 高手进阶

    ### Java命令详解:高手进阶 #### Java命令概述与应用场景 在Java开发中,掌握核心命令行工具对于提升开发效率、进行深入调试至关重要。本文将详细介绍`java.exe`、`javac.exe`、`javaw.exe`、`javah.exe`、`javap...

    java 使用dos命令详解

    ### Java使用DOS命令详解 在Java开发过程中,有时候我们需要执行一些特定的操作系统命令来完成特定的任务,尤其是在Windows平台上。本文将详细介绍如何在Java中调用DOS命令,并通过具体的示例来阐述这一过程。 ###...

    java 2语言命令详解

    Java 2语言命令详解 Java 2平台是Java技术的核心组成部分,它提供了广泛的功能和工具,使得开发者能够创建、编译、运行Java应用程序。在Java 2中,有一系列的命令行工具,它们是开发过程中的重要环节。下面将详细...

    java与javac命令详解

    Java 与 javac 命令详解 Java 和 javac 命令是 Java 语言的基本组成部分,它们在 Java 应用程序的编译和执行过程中扮演着重要的角色。javac 命令用于编译 Java 程序源代码,生成字节码文件,而 java 命令用于执行...

    Java2语言命令详解

    Java2语言命令详解 在Java开发中,理解并掌握各种命令行工具是至关重要的,特别是对于初学者和专业开发者来说。Java2语言命令主要指Java Development Kit (JDK) 提供的一系列命令行工具,它们在Java程序的编译、...

    Java2 语言命令详解

    Java2 语言命令详解 Java2 语言是Java平台的核心组成部分,它提供了丰富的类库、强大的性能优化以及多线程支持。在Java2环境中,掌握各种命令行工具是每个开发者必备的技能。本文将深入探讨Java2语言命令的使用方法...

    java命令参数详解

    Java命令参数详解是Java开发中不可或缺的一部分,它们允许开发者对JVM(Java虚拟机)的行为进行微调,以优化程序的性能、控制内存使用、调试和监控等。本文将深入探讨一些关键的Java命令行参数。 1. **-version**: ...

    java 2语言命令详解 JAVA程序设计

    Java 2语言命令详解是Java编程领域中的一个重要环节,它涉及到如何在命令行环境中编译、运行和管理Java应用程序。本文将深入解析Java 2语言的相关命令,帮助读者理解和掌握JAVA程序设计的基础知识。 首先,我们需要...

    java-JDK常用命令详解

    Java JDK 常用命令详解 Java JDK 提供了多种命令来帮助开发者更好地使用 Java 语言,以下是 JDK 中常用的命令解释: 1. rmic 命令 rmic 命令用于生成 stub 和 skeleton,它可以将 Java 类编译成可供远程对象使用...

    java开发maven命令详解

    ### Maven命令详解 Maven是Java项目自动化构建工具的一个标准,它通过一组生命周期构建项目对象模型(POM),简化了构建过程。对于初学者来说,理解Maven的基本命令及其用法至关重要。 #### 1. `mvn -v` 用于显示...

    java2应用命令详解

    Java 2 应用命令详解 在 Java 开发和运行环境中,掌握各种命令行工具是至关重要的。Java 2 应用命令主要指的是用于管理、编译、运行和调试 Java 程序的一系列命令。这些命令使得开发者能够在不同的操作系统上高效地...

    java程序命令行下的执行

    ##### java命令详解 - **语法**:`java [选项] &lt;主类名&gt;` - `[选项]`:可选参数,例如 `-classpath` 或 `-cp` 用于指定类路径。 - `&lt;主类名&gt;`:包含 `main` 方法的类名,它是程序的入口点。 - **示例**:`java ...

Global site tag (gtag.js) - Google Analytics