#统计 ClassLoader 实际使用 URL 和未使用的 URL 注意 注意,基于 JVM 目前已加载的所有类统计,不代表Unused URLs可以从应用中删掉。因为可能将来需要从Unused URLs里加载类,或者需要加载resources。 $ classloader --url-stat com.taobao.arthas.agent.ArthasClassloader@3c41660, hash:3c41660 Used URLs: file:...
参数说明:class-pattern:类名表达式匹配[c:]:类所属 ClassLoader 的 hashcode[E]:开启正则表达式匹配,默认为通配符匹配#把String类的字节码文件保存到~/logs/arthas/classdump/目录下dump java.lang.String#把demo包下所有的类的字节码文件保存到~/logs/arthas/classdump/目录下dump demo.*5、classloader(...
dump demo.* -d /usr/local/arthas classloader 显示所有类加载器信息: classloader -l 获取某个类加载器所在的 jar 包: classloader -chash 获取某个资源所在的 jar 包: classloader -chash-r META-INF/MANIFEST.MF 加载某个类到内存当中: classloader -chash-load java.lang.String...
_class-pattern_:这是必填参数,用于指定要反编译的类名,支持通配符匹配。 [c:]:可选参数,用于指定类加载器的哈希码,当存在多个类加载器加载了相同名称的类时非常有用。 [classLoaderClass:]:另一个可选参数,允许通过指定类加载器的类名来选择特定的类加载器,前提是此参数能唯一匹配到一个类加载器实例。
classloader -c [hashcode] --load [类名]使用 ClassLoader 去加载类 classloader -c [hashcode] -r [资源名]用 ClassLoader 去查找 resource dump dump 已加载类的 bytecode 到特定目录,这个命令比较常用,主要用来下载/打印出来 class 文件。 常用命令: ...
getstatic -c 3d4eac69 demo.MathGame random 1. 对于只有唯一实例的 ClassLoader 可以通过--classLoaderClass 指定 class name, 使用起来更加方便: getstatic --classLoaderClass sun.misc.Launcher$AppClassLoader demo.MathGame random 1. 注: 这里 classLoaderClass 在 java 8 是sun.misc.Launcher$AppClassLoad...
Arthas的classloader相关命令 sc 作用,查看 JVM 已加载的类信息,“Search-Class” 的简写,这个命令能搜索出所有已经加载到 JVM 中的 Class 信息,sc 默认开启了子类匹配功能,也就是说所有当前类的子类也会被搜索出来,想要精确的匹配,请打开 options disable-sub-class true 开关。
classloader 查看classloader 的继承树,urls,类加载信息 heapdump 类似jmap 命令的 heap dump 功能 3.5 退出 使用shutdown 退出时 Arthas 同时自动重置所有增强过的类 。 4. Arthas的常用操作 上面已经了解了Arthas的使用场景以及启动方式,下面就来说说Arthas的使用方式。 首先,编写一个有各种异常场景的代码。这个代...
dump -d /Users/liyabin/projectCode/test com.lyb.web.mySpringBoot.demo.RedefineTestSimple 7.heapdump:dump内存对象信息 heapdump /Users/liyabin/projectCode/test/222.hprof 8.classloader:查看 classloader 的继承树,urls,类加载信息 classloader classloader-l classloader-c 1b68b9a4...
第二步:使用jad命令将.class文件反编译为.java文件才行 jad -c 7c53a9eb --source-only com.lxl.jvm.DeadLockTest > /Users/lxl/Downloads/DeadLockTest.java jad命令是反编译指定已加载类的源码 -c : 类所属 ClassLoader 的 hashcode --source-only:默认情况下,反编译结果里会带有ClassLoader信息,通过...