菜单
本页目录

jre

java常用命令
jstack -l 28903 >> 20200206_jstack.txt
jmap -dump:format=b,file=20200206_jstack.out 28903

-Xdebug 远程调试命令
java -Xdebug -Xrunjdwp:transport=dt_socket,address=8788,server=y,suspend=n,onthrow=java.io.IOException,launch=/sbin/echo -Xms1024m -Xmx1024m -DAPP_DOMAIN=xxxx -jar xxxx.jar

-Xdebug:通知JVM工作在debug模式下;
-Xnoagent 禁用默认sun.tools.debug调试器。
-Xrunjdwp:通知JVM使用(java debug wire protocol)来运行调试环境;加载JDWP的JPDA参考执行实例
    transport:监听Socket端口连接方式(也可以dt_shmem共享内存方式,但限于windows机器,并且服务提供端和调试端只能位于同一台机);
    server:server=y表示当前是调试服务端,=n表示当前是调试客户端
    suspend:suspend=n表示启动时不中断,一般用于设置主动连接;suspend=y表示启动时就进入调试模式,一般用于被动连接
    address=prot 表示远程debug所开放的端口号
    onthrow指明,当产生该类型的Exception时,JVM就会中断下来,进行调式。该参数可选
    launch指明,当JVM被中断下来时,执行的可执行程序。该参数可选 
    onuncaught(=y或n)指明出现uncaught exception 后,是否中断JVM的执行。该参数可选
-Djava.compiler=NONE 禁止 JIT 编译器的加载。
-Dxxx=x 配置系统属性,用于将属性传递到应用中 System.getProperty("属性名")


启动调试 命令通过jdb
    jdb -connect com.sun.jdi.SocketAttach:port=5432,hostname={hostIp} 
工具通过idea/eclipse的remote插件

jvisualvm 打开文件
自带变量
guid