> Add VM.classes to print details of all classes, output looks like: > > 1. jcmd VM.classes > > KlassAddr Size State Flags LoaderName ClassName > 0x0000000800c0b400 62 inited W bootstrap > java.lang.invoke.LambdaForm$MH/0x0000000800c0b400 > 0x0000000800c0b000 62 inited W bootstrap > java.lang.invoke.LambdaForm$DMH/0x0000000800c0b000 > 0x0000000800c0ac00 62 inited W bootstrap > java.lang.invoke.LambdaForm$MH/0x0000000800c0ac00 > ... > > 2. jcmd VM.classes verbose > > KlassAddr Size State Flags LoaderName ClassName > 0x0000000800c0b400 62 inited W bootstrap > java.lang.invoke.LambdaForm$MH/0x0000000800c0b400 > java.lang.invoke.LambdaForm$MH/0x0000000800c0b400 {0x0000000800c0b400} > - instance size: 2 > - klass size: 62 > - access: final synchronized > - state: inited > - name: 'java/lang/invoke/LambdaForm$MH+0x0000000800c0b400' > - super: 'java/lang/Object' > - sub: > - arrays: NULL > - methods: Array<T>(0x00007f620841f210) > - method ordering: Array<T>(0x0000000800a7e5a8) > - default_methods: Array<T>(0x0000000000000000) > - local interfaces: Array<T>(0x00000008005af748) > - trans. interfaces: Array<T>(0x00000008005af748) > - constants: constant pool [41] {0x00007f620841f030} for > 'java/lang/invoke/LambdaForm$MH+0x0000000800c0b400' cache=0x00007f620841f380 > - class loader data: loader data: 0x00007f61c804a690 of 'bootstrap' has a > class holder > - source file: 'LambdaForm$MH' > - class annotations: Array<T>(0x0000000000000000) > - class type annotations: Array<T>(0x0000000000000000) > - field annotations: Array<T>(0x0000000000000000) > - field type annotations: Array<T>(0x0000000000000000) > - inner classes: Array<T>(0x00000008005af6d8) > - nest members: Array<T>(0x00000008005af6d8) > - permitted subclasses: Array<T>(0x00000008005af6d8) > - java mirror: a 'java/lang/Class'{0x000000011f4b3968} = > 'java/lang/invoke/LambdaForm$MH+0x0000000800c0b400' > - vtable length 5 (start addr: 0x0000000800c0b5b8) > - itable length 2 (start addr: 0x0000000800c0b5e0) > - ---- static fields (1 words): > - static final '_D_0' 'Ljava/lang/invoke/LambdaForm;' @112 > - ---- non-static fields (0 words): > - non-static oop maps: > 0x0000000800c0b000 62 inited W bootstrap > java.lang.invoke.LambdaForm$DMH/0x0000000800c0b000 > java.lang.invoke.LambdaForm$DMH/0x0000000800c0b000 {0x0000000800c0b000} > - instance size: 2 > - klass size: 62 > - access: final synchronized > - state: inited > - name: 'java/lang/invoke/LambdaForm$DMH+0x0000000800c0b000' > - super: 'java/lang/Object' > - sub: > - arrays: NULL > - methods: Array<T>(0x00007f620841ea68) > - method ordering: Array<T>(0x0000000800a7e5a8) > - default_methods: Array<T>(0x0000000000000000) > - local interfaces: Array<T>(0x00000008005af748) > - trans. interfaces: Array<T>(0x00000008005af748) > - constants: constant pool [49] {0x00007f620841e838} for > 'java/lang/invoke/LambdaForm$DMH+0x0000000800c0b000' cache=0x00007f620841ebe0 > - class loader data: loader data: 0x00007f61c804a750 of 'bootstrap' has a > class holder > - source file: 'LambdaForm$DMH' > - class annotations: Array<T>(0x0000000000000000) > - class type annotations: Array<T>(0x0000000000000000) > - field annotations: Array<T>(0x0000000000000000) > - field type annotations: Array<T>(0x0000000000000000) > - inner classes: Array<T>(0x00000008005af6d8) > - nest members: Array<T>(0x00000008005af6d8) > - permitted subclasses: Array<T>(0x00000008005af6d8) > - java mirror: a 'java/lang/Class'{0x000000011f4b0968} = > 'java/lang/invoke/LambdaForm$DMH+0x0000000800c0b000' > - vtable length 5 (start addr: 0x0000000800c0b1b8) > - itable length 2 (start addr: 0x0000000800c0b1e0) > - ---- static fields (1 words): > - static final '_D_0' 'Ljava/lang/invoke/LambdaForm;' @112 > - ---- non-static fields (0 words): > ...
Yi Yang has updated the pull request incrementally with one additional commit since the last revision: review ------------- Changes: - all: https://git.openjdk.java.net/jdk/pull/7105/files - new: https://git.openjdk.java.net/jdk/pull/7105/files/80a3d22b..7f0bdd23 Webrevs: - full: https://webrevs.openjdk.java.net/?repo=jdk&pr=7105&range=02 - incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=7105&range=01-02 Stats: 27 lines in 2 files changed: 0 ins; 11 del; 16 mod Patch: https://git.openjdk.java.net/jdk/pull/7105.diff Fetch: git fetch https://git.openjdk.java.net/jdk pull/7105/head:pull/7105 PR: https://git.openjdk.java.net/jdk/pull/7105