get static fields of a class in a heap dump in OQL
-
09-10-2019 - |
문제
I have a heap dump and I'm using Eclipse MAT, though I suppose this should work through visualvm or whatever OQL client.
We can select fields of all instances of a class by doing something like
select s.field1, s.field2 from org.me.MyClass
... but this is restricted to member variables, and to types with instances.
How can select the static fields of a class with no instances?
This is somewhat related to this other question.
해결책
To access static field 'props' of class java.lang.System you can use (in VisualVM)
select heap.findClass("java.lang.System").statics.props
select heap.findClass("java.lang.System").props
다른 팁
This is a bit hackish, but works in MAT:
SELECT c.SIZE
FROM INSTANCEOF java.lang.Class c
WHERE c.@displayName.contains("class java.lang.Integer ")
제휴하지 않습니다 StackOverflow