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. mysql远程链接(可以在服务器上配置然后在本地连接远程服务器)

    ps:如果一下的连接不成功原因:一定要关闭windows防火墙或者linux的防火墙 1.在服务器端授权(黄色标记的地方第一个是用户名,第二个的意思是可以远程连接,第三个是密码) GRANT ALL  ...

  2. 简单的Spring1.0小配置

    开始Spring AOP的小理解 拿一个小例子来说吧!    老师上课   这样的例子!    老师上课--就是一个核心的业务!     那么上课之前需要点名,天气太热,需要开空调! 这个时候,一个老 ...

  3. 忘记本地MySQL数据库密码的解决方法

    平台:win7 1.打开cmd窗口,进入 MySQL的安装目录. 2.停止MySQL的服务.已经停止了. 右键MySQL,看到启动是可点击的,证明MySQL服务已停止运行. 3.将root用户对数据库 ...

  4. logging日志模块_python

    一.logging模块 1.功能 logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级.日志保存路径.日志文件回滚等:相比print,具备如下优点: 可以通过设 ...

  5. 移动端安卓IOS对接H5项目遇到的坑

    最近做一个H5项目 退出的时候需要调用原生的弹框退出, 之前以为很简单,直接ajax调用后端退出接口即可.后来发现数据拿不到,因为状态用的是cookie存储, 后来想到ajax 传参数请求,后来还是拿 ...

  6. redis缓存处理机制

    1.redis缓存处理机制:先从缓存里面取,取不到去数据库里面取,然后丢入缓存中 例如:系统参数处理工具类 package com.ztesoft.iotcmp.utils; import com.e ...

  7. <img src = "..."/>的一个图片上面怎么在放上字

    转自:https://zhidao.baidu.com/question/1495805873400412779.html 例子1: html中可以用css相对定位让文字在图片的上面. 1.新建htm ...

  8. 解决使用git出现 The file will have its original line endings in your working directory

    执行以下命令即可解决 git rm -r --cached . git config core.autocrlf false git add . . 代表当前目录

  9. \r、\n、\r\n的区别-转载

    文章地址: https://blog.csdn.net/qq_40395278/article/details/81199281 https://blog.csdn.net/qq592304796/a ...

  10. thinkphp中简单的控制器使用

    1.在路由(route.php)中定义一条路由 Route::rule('new/:name/:id','index/News/read'); 2.在index下的controller控制器中新建一个 ...