繁体   English   中英

获取所有JVM使用的所有Java类的列表?

[英]Obtaining a list of all Java classes used from all JVM's?

我想要一个在某个时刻在多个线程/ JVM中加载的所有类的列表。

我知道,当您使用-verbose参数运行Java时,可以将其像这样写入文件: java -verbose:class com.package.Foo > classes-used.txt

但是,我的主程序中有使用Shell脚本启动新jar的线程。 我想避免必须在每个shell脚本中编写-verbose参数,并且我想知道在Linux上是否还有其他方法可以做到这一点?

您可以使用JDK随附的jcmd命令。 启动时,不需要任何特殊参数即可将其传递给JVM。

jcmd 

将列出当前正在运行的所有JVM及其pid(进程ID)。

jcmd <pid> GC.class_histogram

然后将列出该JVM中当前加载的每个类,以及计数多少个实例。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM