jdk常用命令

news2024/11/18 21:24:09

42630ae11eaa4d90bfbd325fa396fd4e.jpg1.jinfo命令

 

 jinfo命令主要查看虚拟机配置参数信息,也可用于调整虚拟机的配置参数。jinfo不仅可以查看运行时某一个Java虚拟机参数的实际取值, 甚至可以在运行时修改部分参 数,并使之立即生效。 但是,并非所有参数都支持动态修改。参数只有被标记 manageable的flag可以被实时修改。其实,这个修改能力是 极其有限的。

 

格式:jinfo [option] pid

 

       jinfo -sysprops pid 查看进程配置信息

 

       jinfo -flags pid 查看曾经赋过值的参数值

 

       jinfo -flag <具体参数> pid: 查看具体参数的值 ex:jinfo -flag MaxHeapSize pid

 

修改参数格式:

 

    布尔类型: jinfo -flag +-参数 pid

 

    非布尔类型: jinfo -flag 参数名=参数值 pid

 

2.jmap命令

主要用于监视进程运行中的jvm物理内存的占用情况。该进程内存中,所有对象的情况:产生了哪些对象,对象数量

 

 1) jmap -heap [pid] 查看当前进程堆内存信息

 

 2)jmap -histo [pid]列出当前内存中存活对象的柱状图,也就是对象个数以及占用内存信息(平时参考意义不是很大,但是如果发生内存泄露等问题时,还有有参考价值的。)

 

 3)jmap -clstats [pid] 主要展示ClassLoader信息

 

 4)jmap -dump:format=b,file=heapdump.phrof [pid] 这个比较有用,可以打印出当前进程的dump信息

 

3.jstat命令

 jstat命令利用JVM内建的指令对java应用程序的资源和性能进行实时的命令行的监控,包括对进程的ClassLoader、compile、gc等情况。

 

格式:jstat -<option> [-t] [-h<lines>] <vmid> [<interval> [<count>]]

 

参数:

 

复制代码

-class:统计class loader行为信息 

-compile:统计编译行为信息 

-gc:统计jdk gc时heap信息 

-gccapacity:统计不同的generations(包括新生区,老年区,permanent区)相应的heap容量情况 

-gccause:统计gc的情况,(同-gcutil)和引起gc的事件 

-gcnew:统计gc时,新生代的情况 

-gcnewcapacity:统计gc时,新生代heap容量 

-gcold:统计gc时,老年区的情况 

-gcoldcapacity:统计gc时,老年区heap容量 

-gcpermcapacity:统计gc时,permanent区heap容量 

-gcutil:统计gc时,heap情况

复制代码

1) jstat -gc [pid] [<interval> [<count>]]

 

    -gc命令查看当前进程的GC情况,包括老年代和新生代,这里的interval默认单位是ms,count是总打印次数

 

2) jstat -gcutil [pid] [<interval> [<count>]]

 

4.jstack

jstack这个命令平时我们应该用的比较多。主要用来查看当前进程的线程信息

 

1)jstack [pid] 直接查看进程线程信息

 

这样直接使用的话,会把进程的线程信息直接打印到控制台,一般来说,都打印到一个文件里

 

ex:.\jstack.exe 15276 > stack.txt

 

 

 

5.javap

查看 Java 字节码反编译的源文件

 

6.jps

​​jps​​ 是用来查询当前所有进程 pid 的,命令的用法如下图所示:

 

 

 

 

 

 

 

7.jcmd

 jcmd​​ 可以查看 JVM 信息,常用的命令内容如下:

 

 

 

 

 

8.jhat

jhat​​​ 分析 Java 堆的命令,可以将堆中对象以 ​​html​​ 的形式显示出来,支持对象查询语言 OQL,命令内容如下:

 

 

 

8.wsgen

wsgen 是在JDK的bin目录下的一个exe文件(Windows版),该命令的主要功能是用来生成合适的JAX-WS。它读取Web Service的终端类文件,同时生成所有用于发布Web Service所依赖的源代码文件和经过编译过的二进制类文件。这里要特别说明的是,通常在Web Service Bean中用到的异常类会另外生成一个描述Bean,如果Web Service Bean中的方法有申明抛出异常,这一步是必需的,否则服务器无法绑定该对像。此外,wsgen 还能辅助生成WSDL和相关的xsd文件。wsgen 从资源文件生成一个完整的操作列表并验证web service是否合法,可以完整发布。

命令参数说明:

 

-cp 定义classpath

-r 生成 bean的wsdl文件的存放目录

-s 生成发布Web Service的源代码文件的存放目录(如果方法有抛出异常,则会生成该异常的描述类源文件)

 -d 生成发布Web Service的编译过的二进制类文件的存放目录(该异常的描述类的class文件)

 

范例: wsgen -cp ./bin -r ./wsdl -s ./src -d ./bin -wsdl org.jsoso.jws.server.Example

 

9.wsimport

wsimport也是在JDK的bin目录下的一个exe文件(Windows版),主要功能是根据服务端发布的wsdl文件生成客户端存根及框架,负责与Web Service 服务器通信,并在将其封装成实例,客户端可以直接使用,就像使用本地实例一样。对Java而言,wsimport帮助程序员生存调用web service所需要的客户端类文件.java和.class。要提醒指出的是,wsimport可以用于非Java的服务器端,如:服务器端也许是C# 编写的web service,通过wsimport则生成Java的客户端实现。

命令参数说明:

 

复制代码

  -b <path> 指定 jaxws/jaxb 绑定文件或附加模式

                            (每个 <path> 都必须具有自己的 -b)

  -B<jaxbOption> 将此选项传递给 JAXB 模式编译器

  -catalog <file> 指定用于解析外部实体引用的目录文件

                            支持 TR9401, XCatalog 和 OASIS XML 目录格式。

  -d <directory> 指定放置生成的输出class文件的位置

  -encoding <encoding> 指定源文件所使用的字符编码

  -extension 允许供应商扩展 - 不按规范

                            指定功能。使用扩展可能会

                            导致应用程序不可移植或

                            无法与其他实现进行互操作

  -help 显示帮助

  -httpproxy:<host>:<port> 指定 HTTP 代理服务器 (端口默认为 8080)

  -keep 保留生成的class文件

  -p <pkg> 指定目标程序包

  -quiet 隐藏 wsimport 输出

  -s <directory> 指定放置生成的源文件的位置

  -target <version> 按给定的 JAXWS 规范版本生成代码

                            默认为 2.2, 接受的值为 2.0, 2.1 和 2.2

                            例如, 2.0 将为 JAXWS 2.0 规范生成兼容的代码

  -verbose 有关编译器在执行什么操作的输出消息

  -version 输出版本信息

  -wsdllocation <location> @WebServiceClient.wsdlLocation 值

  -clientjar <jarfile> 创建生成的 Artifact 的 jar 文件以及

                            调用 Web 服务所需的 WSDL 元数据。

  -generateJWS 生成存根 JWS 实现文件

  -implDestDir <directory> 指定生成 JWS 实现文件的位置

  -implServiceName <name> 生成的 JWS 实现的服务名的本地部分

  -implPortName <name> 生成的 JWS 实现的端

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1313771.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

springboot使用validation-api对入参进行校验

springboot使用validation-api对入参进行校验 前言&#xff1a;在实际开发中&#xff0c;我们不能完全相信前端给我们的参数是否符合预期或规范&#xff0c;为了避免恶意入参&#xff0c;引发系统或数据安全问题&#xff0c;需要对前端传过来的参数进行校验。例如字符串长度校…

牛客网BC107矩阵转置

答案&#xff1a; #include <stdio.h> int main() {int n0, m0,i0,j0,a0,b0;int arr1[10][10]{0},arr2[10][10]{0}; //第一个数组用来储存原矩阵&#xff0c;第二个数组用来储存转置矩阵scanf("%d%d",&n,&m); if((n>1&&n<10)&&am…

ShopsN commentUpload 文件上传漏洞复现

0x01 产品简介 ShopsN 是一款符合企业级商用标准全功能的真正允许免费商业用途的开源网店全网系统。 0x02 漏洞概述 ShopsN commentUpload 接口处存在任意文件上传漏洞,攻击者可以利用文件上传漏洞执行恶意代码、写入后门、读取敏感文件,从而可能导致服务器受到攻击并被控…

千梦网创:Too Young,to simple

大多数人啊&#xff0c;还是too young&#xff0c;包括我。 网上的评论对我而言并不影响我通过提供价值服务经营生活&#xff0c;但是有时候对于我的思考还是有一些帮助的。 我把很多可以争与不可争的事件看做是一种现象&#xff0c;这种现象往往可以给予我新的能量。 当学员…

2024美赛备战-美赛必备技能(matlab 和SPSS入门必备)

( 一 )Matlab 1.数值计算和符号计算功能 Matlab 以矩阵作为数据操作的基本单位&#xff0c;它的指令表达式与数学、工程中 常用的符号、表达式十分相似&#xff0c;故用Matlab 来解算问题要比用C、FORTRAN 等 语 言完成相同的事情简捷得多&#xff0c;使学者易于学习和掌握…

完蛋,我的AI自己动起来了

故事的开始 一开始&#xff0c;我只是给我的公众号接入了星火认知大模型。但是公众号的应用场景不足&#xff0c;没办法当成群机器人来用。所以我后来办了张新的电话卡&#xff0c;注册了个小号微信。想把小号打造成微信群聊助手&#xff0c;在我没时间翻冗长的聊天记录的时候…

平面腔体谐振计算与仿真

PCB的电源网络是由电介质材料隔开的两个平行金属板所组成&#xff0c;可以通过以下的3种方法对其谐振模式进行分析&#xff1a; 1. 基于腔体模型的计算&#xff1b; 2. 基于SPICE等效电路&#xff1b; 3. 基于全波数值电磁算法的3D模型。 设计得当的前提下&#xff0c;上述3种方…

西工大计院计算机系统基础实验二(配置gdb插件)

第二次实验是二进制炸弹实验&#xff0c;为了简化操作&#xff0c;并且让大家接下来能够按照作者之前已经为网安院写好的博客西工大网络空间安全学院计算机系统基础实验二&#xff08;清楚实验框架及phase_1&#xff09;-CSDN博客来走&#xff0c;大家需要下载一款好用的gdb插件…

退回论文如何修改最好最快 快码论文

大家好&#xff0c;今天来聊聊退回论文如何修改最好最快&#xff0c;希望能给大家提供一点参考。 以下是针对论文重复率高的情况&#xff0c;提供一些修改建议和技巧&#xff0c;可以借助此类工具&#xff1a; 退回论文如何修改最好最快 当论文被退回时&#xff0c;如何修改才…

“快速排序:一种美丽的算法混沌”

欢迎来到我的博客&#xff01;在今天的文章中&#xff0c;我将采用一种独特且直观的方式来探讨我们的主题&#xff1a;我会使用一幅图像来贯穿整篇文章的讲解。这幅精心设计的图表不仅是我们讨论的核心&#xff0c;也是一个视觉辅助工具&#xff0c;帮助你更深入地理解和掌握本…

【idea】idea尾部自动删除空格,idea2023.1.2关闭自动去除行尾空格的功能

这个功能是由于git或者svn上的代码有许多空格的时候&#xff0c;会自动把空格去掉&#xff0c;就会导致出现许多更改的地方&#xff0c;会自动删空格。 尾部刚打好空格准备写代码&#xff0c;自动就删掉空格&#xff0c;又得重打空格后继续编码&#xff0c;非常不爽。 设置如…

linux sed批量修改替换文件中的内容/sed特殊字符

sed系列文章 linux常用命令(9)&#xff1a;sed命令(编辑/替换/删除文本)linux sed命令删除一行/多行_sed删除第一行/linux删除文件某一行linux sed批量修改替换文件中的内容/sed特殊字符 文章目录 sed系列文章一、sed替换文本语法1.1、基础语法1.2、高阶语法 二、实战/实例2.1…

群晖7.2使用Docker安装容器魔方结合内网穿透实现远程访问

最近&#xff0c;我发现了一个超级强大的人工智能学习网站。它以通俗易懂的方式呈现复杂的概念&#xff0c;而且内容风趣幽默。我觉得它对大家可能会有所帮助&#xff0c;所以我在此分享。点击这里跳转到网站。 文章目录 1. 拉取容器魔方镜像2. 运行容器魔方3. 本地访问容器魔…

SpringTask

SpringTask是一种用于定时任务调度的框架周期性任务、定时任务需要SpringTask框架 比较出名的框架有三种&#xff1a; &#xff08;1&#xff09;SpringTask(没有很大的并发量需求量&#xff0c;用SpringTask足够) &#xff08;2&#xff09;Quartz(老牌的定时任务&#xff0c…

在IDEA 2023.3中Jrebel debug 模式无法启动

目录 版本说明问题描述解决方式 版本说明 IDEA&#xff1a;IntelliJ IDEA 2023.3 (Ultimate Edition) Jrebel&#xff1a; JRebel Agent 2023.4.2 (202312041035) 问题描述 在IDEA中启动debug模式时无法正常启动 解决方式 在 IDEA 2023.3 版本修改了默认的配置&#xff…

仿淘宝、京东首页icons横向滑动效果

一、效果展示 淘宝&#xff1a; 京东&#xff1a; 二、话不多说&#xff0c;直接上demo 案例效果 代码 <template><div class"demo-page"><h1>滚动效果</h1><div classicons-slide-wrapper><div class"icons-container&quo…

k8s节点not ready

开发小伙伴反应&#xff0c;发布应用失败。检查后发现有个虚拟机挂掉了 启动后先重启服务&#xff1a;&#xff08;一般是自启动&#xff0c;自动拉起pod服务&#xff09; service docker restart docker ps |grep kube-apiserver|grep -v pause|awk ‘{print $1}’|xargs -i …

【SpringBoot】配置文件

配置文件官网 1. 配置方式 application.propertiesapplication.yml / application.yaml 2. 自定义配置信息 将实体类中的本应该写死的信息写在属性配置文件中。 可以使用 Value("${键名}") 获取&#xff0c;也可以使用 ConfigurationProperties(prefix"前…

C++_类的定义和使用

目录 1、类的引用 1.1 类的成员函数 1.2 类成员函数的声明和定义 2、类的定义 2.1 类的访问限定&#xff08;封装&#xff09; 3、类重名问题 4、类的实例化 4.1 类的大小 5、隐含的this指针 5.1 空指针问题 结语&#xff1a; 前言&#xff1a; C的类跟c语言中的结…

【Vue】日期格式化(全局)

系列文章 【Vue】vue增加导航标签 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/134965353 【Vue】Element开发笔记 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/133947977 【Vue】vue&#xff0c;在Windows IIS平台…