- 概述
- 简单介绍一下 java 命令行相关的参数及属性
1. java 命令行
- 基本
- 命令
> java <mainClass>
- 描述
- 执行 Java 类
- 需要准备好编译完成的 mainClass
- 命令
- 然后
- 命令
> java -X<options> -XX<options> -D<properties> <mainClass> [arg0] [arg1]...
- 怎么感觉, 东西一下多了好多, 有点懵逼了
- 没事, 慢慢来
- 这些东西, 大概分这么几块
- 选项
- 属性
- 参数
- 这些东西, 大概分这么几块
- 没事, 慢慢来
- 怎么感觉, 东西一下多了好多, 有点懵逼了
- 命令
2. 选项
- 概述
- 选项主要的目的, 是对 JVM 做一些调整
- 分类
- 标注选项
- 通用
- 所有版本的 JVM 都要实现的选项
- 例如
-version -server -client
- 其他
- 我们后面说的 -D, 其实也包含在其中
- 这个我想单独说
- 具体的例子, 就不一一例举了
- 我们后面说的 -D, 其实也包含在其中
- 通用
- 拓展选项
- 拓展
- hotspot 会实现
- 其他 JVM 未必实现
- 例如
# 最大堆内存 -Xmx3800m # 初始堆内存 -Xms3800m # 新生代内存 -Xmn2g # (每个线程)栈内存大小 -Xss128k
- 其他
- 常见参数就是这些
- 不细讲了
- 数值单位
- 可以自己定, 比较灵活
- 重合
- 拓展选项和高级选型, 会有部分的重合
- 这个不细说了(就是懒)
- 拓展选项和高级选型, 会有部分的重合
- 常见参数就是这些
- 拓展
- 高级选项
- 开发者选项
- 相对高级
- 不保证所有 JVM 都有支持
- 分类
- 高级运行时
- 配置 JVM
- 高级维护性
- 调试
- 收集系统信息
- 高级GC
- 选择 GC
- 控制 GC 行为
- 高级JIT
- 控制 JIT 的编译方式
- 即时编译的那个东西
- 控制 JIT 的编译方式
- 高级运行时
- 例如
# 同 -Xmx -XX:MaxHeapSize=size # 同 -Xms -XX:InitialHeapSize=size # 日志 -XX:LogFile=path
- 开发者选项
- 标注选项
- ref
- java的-D命令行参数
- 把命令行选项, 归为了 命令行参数
- 只看 Java 启动参数 那一小块
- 虽然说得不完全, 但是简单清晰, 有个直观的认识
- java命令行介绍
- 讲得很清晰
- Java -X命令
- ibm java options
- java JVM 参数 -Xms -Xmx -Xmn -Xss 调优总结
- ibm java options
- JVM调优总结
- java的-D命令行参数
3. 属性
- 概述
- 配置 环境变量
- 其实也是 java 标准选项的一部分
- 命令
# 如果 value 带空格, 需要 "" 引起来 > java -D<key>=<value> <mainClass>
- 查看
- 代码
# 1. 获取 property # 值 是 String System.getProperty("<key>") # 2. 设置 property System.setProperty("<key>", "<value>") # 3. 输出所有属性 # 略
- 代码
- ref
4. 参数
- 概述
- 剩下的就是参数了
- 命令
> java <mainClass> [arg0] [arg1]...
- 查看
- main 方法的参数 args[] 就是输入的参数
- String 类型字符串
- 第一个参数下标为 0
- 如果碰到带空格的整体, 可以用 "" 连接
- main 方法的参数 args[] 就是输入的参数
- ref
原文地址:https://www.cnblogs.com/xy14/p/11563830.html
时间: 2024-10-31 12:21:29