1. 概述

    1. 简单介绍一下 java 命令行相关的参数及属性

1. java 命令行

  1. 基本

    1. 命令

      > java <mainClass>
    2. 描述

      1. 执行 Java 类
      2. 需要准备好编译完成的 mainClass
  2. 然后

    1. 命令

      > java -X<options> -XX<options> -D<properties> <mainClass> [arg0] [arg1]...
      1. 怎么感觉, 东西一下多了好多, 有点懵逼了

        1. 没事, 慢慢来

          1. 这些东西, 大概分这么几块

            1. 选项
            2. 属性
            3. 参数

2. 选项

  1. 概述

    1. 选项主要的目的, 是对 JVM 做一些调整
  2. 分类

    1. 标注选项

      1. 通用

        1. 所有版本的 JVM 都要实现的选项
      2. 例如

        -version
        -server
        -client
      3. 其他

        1. 我们后面说的 -D, 其实也包含在其中

          1. 这个我想单独说
        2. 具体的例子, 就不一一例举了
    2. 拓展选项

      1. 拓展

        1. hotspot 会实现
        2. 其他 JVM 未必实现
      2. 例如

        # 最大堆内存
        -Xmx3800m
        # 初始堆内存
        -Xms3800m
        # 新生代内存
        -Xmn2g
        # (每个线程)栈内存大小
        -Xss128k
      3. 其他

        1. 常见参数就是这些

          1. 不细讲了
        2. 数值单位
          1. 可以自己定, 比较灵活
        3. 重合
          1. 拓展选项和高级选型, 会有部分的重合

            1. 这个不细说了(就是懒)
    3. 高级选项

      1. 开发者选项

        1. 相对高级
        2. 不保证所有 JVM 都有支持
      2. 分类

        1. 高级运行时

          1. 配置 JVM
        2. 高级维护性

          1. 调试
          2. 收集系统信息
        3. 高级GC

          1. 选择 GC
          2. 控制 GC 行为
        4. 高级JIT

          1. 控制 JIT 的编译方式

            1. 即时编译的那个东西
      3. 例如

        # 同 -Xmx
        -XX:MaxHeapSize=size
        # 同 -Xms
        -XX:InitialHeapSize=size
        # 日志
        -XX:LogFile=path
  3. ref

    1. java的-D命令行参数

      1. 把命令行选项, 归为了 命令行参数
      2. 只看 Java 启动参数 那一小块
        1. 虽然说得不完全, 但是简单清晰, 有个直观的认识
    2. java命令行介绍
      1. 讲得很清晰
    3. Java -X命令
    4. ibm java options
    5. java JVM 参数 -Xms -Xmx -Xmn -Xss 调优总结
    6. ibm java options
    7. JVM调优总结

3. 属性

  1. 概述

    1. 配置 环境变量
    2. 其实也是 java 标准选项的一部分
  2. 命令

    # 如果 value 带空格, 需要 "" 引起来
    > java -D<key>=<value> <mainClass>
  3. 查看

    1. 代码

      # 1. 获取 property
      # 值 是 String
      System.getProperty("<key>") # 2. 设置 property
      System.setProperty("<key>", "<value>") # 3. 输出所有属性
      # 略
  4. ref

    1. java程序启动参数-D详解
    2. Java System Properties
    3. Oracle Doc
    4. 输出所有属性
    5. 常用系统属性

4. 参数

  1. 概述

    1. 剩下的就是参数了
  2. 命令

    > java <mainClass> [arg0] [arg1]...
    
    
  3. 查看

    1. main 方法的参数 args[] 就是输入的参数

      1. String 类型字符串
      2. 第一个参数下标为 0
      3. 如果碰到带空格的整体, 可以用 "" 连接
  4. ref

    1. 官方文档

Java - Java 命令行简介: 选项, 属性, 参数的更多相关文章

  1. 一些坑 Java 执行命令行命令 Spring Boot 打包为jar ResourceUtils.getFile 等出现的问题

    Java 执行命令行命令 这个没技术含量的东西耗费了我半个多小时 String command = ....; Process process = Runtime.getRuntime().exec( ...

  2. 通过JAVA调用命令行程序

    这是我在把数据导入到数据库时遇到问题,总结下来的.包含两个方法,一个方法是读取文件路径下的文件列表,主方法是执行cmd命令,在导入时想得到导入一个文件的时间,涉及到线程阻塞问题,这个问题理解不是很深, ...

  3. 核心系统命令实战 第一章Linux命令行简介

    第一章Linux命令行简介 1.1 Linux命令行概述 1.1.1 Linux 命令行的开启和退出 开启:登陆账号密码进入系统 退出:exit/logout  快捷键:Ctrl+d 1.1.2 Li ...

  4. Windows操作系统下给文件夹右键命令菜单添加启动命令行的选项

    在命令行中或按下[WIN]+[R]键启动运行对话框的情况下,输入regedit命令启动注册表编辑器,在HKEY_CLASSES_ROOT\Folder\shell下增加一个“CMD”(此处名字可以随便 ...

  5. nodejs命令行执行时带参数

    nodejs命令行执行时带参数 转 https://www.jianshu.com/p/474e6d76f867   今天项目里突然想在初始化时跑一些数据,于是想起以前在python时可以在命令行里带 ...

  6. Java:命令行参数的传入和调用

    1.传入 传入时机:执行时 格式: //编译 javac Main.java //执行并传入命令行参数 -version java Main -version 此时,参数-version就以Strin ...

  7. java的命令行参数到底怎么用,请给截图和实际的例子

    8.2 命令行参数示例(实验) public class Test {    public static void main(String[] args){        if(args.length ...

  8. Java常用命令行工具

    命令基于Sun JDK,用于监控和诊断HotSpot的java 虚拟机. 对应的可执行文件位于$JAVA_HOME/bin/下 jps-虚拟机进程状况工具 选项 作用 -q 只输出LVMID,同进程p ...

  9. java/javac命令行如何同时引用多个包;错误 TypeError: 'JavaPackage' object is not callable 的含义

    出现这类错误提示:'JavaPackage' object is not callable,可以看下所引用的jar包或者class文件是否在java的路径搜索范围内 命令行模式下:javac可以编译* ...

随机推荐

  1. centos 7 源码安装openresty

    Openresty 官网 http://openresty.org Openresty源码下载页面 http://openresty.org/en/download.html Openresty 简易 ...

  2. ansible笔记(15):循环(二)with_items/with_list/with_together/with_flattened

    嵌套的列表(序列中的序列),示例如下: --- - hosts: 192.168.10.2 remote_user: root gather_facts: no tasks: - debug: msg ...

  3. SmartSVN:File has inconsistent newlines

    用SmartSVN提交文件的时候,提示svn: File has inconsistent newlines 这是由于要提交的文件编码时混合了windows和unix符号导致的. 解决方案 Smart ...

  4. C语言移除链表元素

    删除链表中等于给定值 val 的所有节点. 示例: 输入: 1->2->6->3->4->5->6, val = 6 输出: 1->2->3->4 ...

  5. IIS 部署asp.net Core程序注意事项

    Install the .NET Core Windows Server Hosting bundle Install the.NET Core Runtime 修改应用程序池的.net framew ...

  6. FOJ-2013 A Short Problem (前缀和)

    Problem Description The description of this problem is very short. Now give you a string(length N), ...

  7. 【数据结构】【C++】堆栈的实现与应用

    堆栈(Stack) 参考浙大版<数据结构(第2版)> 堆栈可以认为是具有一定约束的线性表,插入和删除的操作都在栈顶的位置,先进入的元素将在后进入的元素之后取出,与生活中的桶类似,故又称为后 ...

  8. Manacher算法求最长回文串模板

    #include <algorithm> #include <iostream> #include <cstring> #include <cstdio> ...

  9. 运筹学学报-运行问题之新版TeX系统支持修改

    <运筹学学报>的LaTeX模板基本上是CCT的典型而且是停留在LaTeX2.09 的时代,故而很多用户下载其模板无法在新TeX系统里使用,这里提供以下解决方案.源文件中的前几行:\docu ...

  10. RGBA alpha 透明度混合算法

    RGBA alpha 透明度混合算法 .分类: 图像处理 Ps技术 2011-05-25 09:11 1112人阅读 评论(0) 收藏 举报 Alpha 透明度混合算法,网上收集整理,分成以下三种: ...