zoukankan      html  css  js  c++  java
  • 设置调试linux下jdb远程调试tomcat源码

    时间紧张,先记一笔,后续优化与完善。

        在tomcat打开调试设置jvm参数

        

        -Xrunjdwp:transport=dt_socket,server=y,address=9090,suspend=y

        

        在linux命令行jdb连接9090端口

        

        jdb -attach ip:9090 -sourcepath /softwares/apache-tomcat-7.0.40-src/java

        

        设置断点

        

        stop at org.apache.tomcat.util.IntrospectionUtils:402 stop at org.apache.tomcat.util.IntrospectionUtils:406 stop at org.apache.tomcat.util.IntrospectionUtils:408 stop at org.apache.tomcat.util.IntrospectionUtils:412

        

        执行程序

        

        main[1] run > Set deferred breakpoint org.apache.tomcat.util.IntrospectionUtils:412 Set deferred breakpoint org.apache.tomcat.util.IntrospectionUtils:412 Set deferred breakpoint org.apache.tomcat.util.IntrospectionUtils:408 Unable to set deferred breakpoint org.apache.tomcat.util.IntrospectionUtils:406 : No code at line 406 in org.apache.tomcat.util.IntrospectionUtils Stopping due to deferred breakpoint errors. Set deferred breakpoint org.apache.tomcat.util.IntrospectionUtils:402 Breakpoint hit: Breakpoint hit: "thread=main", org.apache.tomcat.util.IntrospectionUtils.setProperty(), line=412 bci=849 412 ExceptionUtils.handleThrowable(ie.getCause());

        每日一道理
    虽然你现在还只是一株稚嫩的幼苗。然而只要坚韧不拔,终会成为参天大树;虽然你现在只是涓涓细流,然而只要锲而不舍,终会拥抱大海;虽然你现在只是一只雏鹰,然而只要心存高远,跌几个跟头之后,终会占有蓝天。

        

        打印变量

        

        main[1] locals Method arguments: o = instance of x.x.x.JNDIRealm(id=1156) name = "connectionPassword" value = "1234" invokeSetProperty = true Local variables: setter = "setConnectionPassword" ie = instance of java.lang.reflect.InvocationTargetException(id=1160) main[1] dump ie.target ie.target = { serialVersionUID: -7034897190745766939 java.lang.Exception.serialVersionUID: -3387516993124229948 java.lang.Throwable.serialVersionUID: -3042686055658047285 java.lang.Throwable.detailMessage: "password decrypt is error!" java.lang.Throwable.cause: instance of java.lang.RuntimeException(id=1163) java.lang.Throwable.stackTrace: null }

        

        打印变量dump信息

        

        main[1] dump ie.target.cause ie.target.cause = { serialVersionUID: -7034897190745766939 java.lang.Exception.serialVersionUID: -3387516993124229948 java.lang.Throwable.serialVersionUID: -3042686055658047285 java.lang.Throwable.detailMessage: "get content from cyberark error" java.lang.Throwable.cause: instance of javapasswordsdk.exceptions.PSDKException(id=1165) java.lang.Throwable.stackTrace: null }

        

        ctrl+c 退出

        

        main[1]

        

    文章结束给大家分享下程序员的一些笑话语录: 现在社会太数字化了,所以最好是有一个集很多功能于一身的设备!

  • 相关阅读:
    Javascript獲取濟覽器高屏幕寬高
    引用CSS的問題
    轮胎尺寸周长一览表
    C# 配置文件
    C# 正则表达式替换分组内的内容
    按钮的背景图
    WPF 设置全屏
    窗体内嵌外部程序的显示,获取控件的图片
    将图像转换成一个图标
    resharper 6.0 注册码
  • 原文地址:https://www.cnblogs.com/xinyuyuanm/p/3076815.html
Copyright © 2011-2022 走看看