hsdis、jitWatch

参考资料:

https://blog.csdn.net/qq1169091731/article/details/83067134

https://blog.csdn.net/jl19861101/article/details/87888804

https://nitschinger.at/Printing-JVM-generated-Assembler-on-Mac-OS-X/

https://blog.csdn.net/l294265421/article/details/46697893

 

安装Hsdis

 

1. 下载配置 Hsdis

git clone https://github.com/liuzhengyang/hsdis

cd hsdis

tar -zxvf binutils-2.26.tar.gz

make BINUTILS=binutils-2.26 ARCH=amd64

 

2、复制 hsdis-amd64.so 文件到 {java_home}/jre/lib/amd64/server

sudo cp build/linux-amd64/hsdis-amd64.so /usr/lib/jvm/java-8-oracle/jre/lib/amd64/server

 

3、命令验证是否配置成功

java -XX:+UnlockDiagnosticVMOptions -XX:+PrintAssembly -version

有如下输出则成功

 

4、使用 Hsdis 执行代码,输出反汇编内容

javac A.java

java -server -XX:+UnlockDiagnosticVMOptions -XX:+TraceClassLoading  -XX:+PrintAssembly -XX:+LogCompilation -XX:LogFile=live.log  A    

# A是java文件类名, live.log 是输出的 log 文件

 

安装jitWatch(Mac)

1、下载

git clone https://github.com/AdoptOpenJDK/jitwatch

 

2、从刚安装的hsdis中,找到如下文件

hsdis-amd64.dylib

mac版共享( https://pan.baidu.com/s/1107ubEXdW3BSNjy3DB1n5w )

 

3、设置环境变量,并把文件放进去(在当前用户的根目录下创建文件夹 PathToFile)

export LD_LIBRARY_PATH=~/PathToFile/

 

4、进入到jitWatch

 

5、安装(前提是你已经安装了maven)

mvn clean install -DskipTests=true

 

6、运行

./launchUI.sh

 

 

 

你可能感兴趣的:(JAVA)