Java - Java 命令行简介: 选项, 属性, 参数
- 概述
- 简单介绍一下 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
Java - Java 命令行简介: 选项, 属性, 参数的更多相关文章
- 一些坑 Java 执行命令行命令 Spring Boot 打包为jar ResourceUtils.getFile 等出现的问题
Java 执行命令行命令 这个没技术含量的东西耗费了我半个多小时 String command = ....; Process process = Runtime.getRuntime().exec( ...
- 通过JAVA调用命令行程序
这是我在把数据导入到数据库时遇到问题,总结下来的.包含两个方法,一个方法是读取文件路径下的文件列表,主方法是执行cmd命令,在导入时想得到导入一个文件的时间,涉及到线程阻塞问题,这个问题理解不是很深, ...
- 核心系统命令实战 第一章Linux命令行简介
第一章Linux命令行简介 1.1 Linux命令行概述 1.1.1 Linux 命令行的开启和退出 开启:登陆账号密码进入系统 退出:exit/logout 快捷键:Ctrl+d 1.1.2 Li ...
- Windows操作系统下给文件夹右键命令菜单添加启动命令行的选项
在命令行中或按下[WIN]+[R]键启动运行对话框的情况下,输入regedit命令启动注册表编辑器,在HKEY_CLASSES_ROOT\Folder\shell下增加一个“CMD”(此处名字可以随便 ...
- nodejs命令行执行时带参数
nodejs命令行执行时带参数 转 https://www.jianshu.com/p/474e6d76f867 今天项目里突然想在初始化时跑一些数据,于是想起以前在python时可以在命令行里带 ...
- Java:命令行参数的传入和调用
1.传入 传入时机:执行时 格式: //编译 javac Main.java //执行并传入命令行参数 -version java Main -version 此时,参数-version就以Strin ...
- java的命令行参数到底怎么用,请给截图和实际的例子
8.2 命令行参数示例(实验) public class Test { public static void main(String[] args){ if(args.length ...
- Java常用命令行工具
命令基于Sun JDK,用于监控和诊断HotSpot的java 虚拟机. 对应的可执行文件位于$JAVA_HOME/bin/下 jps-虚拟机进程状况工具 选项 作用 -q 只输出LVMID,同进程p ...
- java/javac命令行如何同时引用多个包;错误 TypeError: 'JavaPackage' object is not callable 的含义
出现这类错误提示:'JavaPackage' object is not callable,可以看下所引用的jar包或者class文件是否在java的路径搜索范围内 命令行模式下:javac可以编译* ...
随机推荐
- lampp ERROR 1044 (42000): Access denied for user ''@'localhost' to database 'lepus'
解决方法: 在[mysqlld]段下增加如下代码:skip-grant-tables: 1.which mysql 查看mysql位置,例如:/opt/lampp/bin/mysql 2.进入配置my ...
- 在myEclipse中根据图表自动生成Hibernate文件
1.新建一个Java Project项目,在scr中创建两个包:Com.hibernate.po 和com.hibernate.dao 2. 3.点击ok 4. 5.选中MyElipse Derby, ...
- JUC-分支合并框架
一.原理 Fork:把一个复杂任务进行分拆,大事化小 Join:把分拆任务的结果进行合并 ForkJoinPool 分支合并池 类比=> 线程池 ForkJoinTask ForkJo ...
- MySQL | linux中数据库导出和导入
一.数据库导出(深坑) 命令:mysqldump -u用户名 -p密码 要导出的数据库 > 导出之后的文件.sql mysqldump -uroot -p database_01 > da ...
- day22 用户添加相关命令 特殊权限为 防止root修改文件
2) 用户相关的命令 useradd -u -g -G -M -s -c usermod -u -g -G -s -c userdel -r groupadd groupmod groupdel ch ...
- Gin_入门
1. 创建路由 1.1 Restful风格的API gin支持Restful风格的API 即Representational State Transfer的缩写.直接翻译的意思是"表现层状态 ...
- org.apache.catalina.connector.ClientAbortException: java.io.IOException: 您的主机中的软件中止了一个已建立的连接。
日志文件中有“java.io.IOException: 您的主机中的软件中止了一个已建立的连接.”错误 org.apache.catalina.connector.ClientAbortExcepti ...
- WPF学习笔记四之命令
1.概念 对于程序来说,命令就是一个个任务,例如保存,复制,剪切这些操作都可以理解为一个个命令.即当我们点击一个复杂按钮时,此时就相当于发出了一个复制的命令,即告诉文本框执行一个复杂选中内容的操作,然 ...
- python3爬取高清壁纸(2)
上次只是爬取一个专辑的图片,这次要爬取一整个页面的所有专辑的图片. 在上次的代码的基础上进行修改就行了,从专辑的索引页面开始,爬取该页面上所有的专辑的链接,再套用上次的代码就行了. 若要爬取多个页面只 ...
- MySQL加号+ 的作用
案例:查询员工名和员工姓,连接成一个字段,并显示为: 姓名 SELECT last_name+first_name AS 姓名 FROM employees;没有报错但姓名一下全是0 Java中的 + ...