程序调试

idea java远程调试配置

血红的双手。 提交于 2019-12-10 16:52:38
线上运行的代码出问题怎么办,代码问题通常会采用打日志的方式来解决,也有一些jvm或者性能问题,可通过jstack,jmap,jconsole或者第三方工具如阿里开源的Arthas(阿尔萨斯)工具来诊断解决问题,有没有一种更便捷的方式呢,当然有了 就是jdwp JDWP 是 Java Debug Wire Protocol 的缩写,它定义了调试器(debugger)和目标虚拟机(target vm)之间的通信协议。Target vm 中运行着我们要调试的 Java 程序,它与一般运行的 JVM 没有什么区别,只是在启动时加载了 JDWP Agent 从而具备了调试功能。而 debugger 就是我们本地的调试器,它向运行中的 target vm 发送指令来获取 target vm 运行时的状态和控制远程 Java 程序的执行。Debugger 和 target vm 分别在各自的进程中运行,他们之间通过 JDWP 通信协议进行通信。 idea的配置 使用注意问题 1. 调试要确保当前在线系统无人使用 2. 调试结束要关闭debug模式 3. 线上代码要和本地代码版本一致 4. 这种方式只适用于代码调试 参考 https://www.jianshu.com/p/134bd5b913c5 来源: CSDN 作者: a942945571 链接: https://blog.csdn.net

SAP错误消息调试之七种武器:让所有的错误消息都能被定位

拈花ヽ惹草 提交于 2019-12-10 16:32:49
目录 长生剑 - SAPGUI Where Used List 碧玉刀 - ABAP调试器观察点 霸王枪 - ABAP调试器动态断点 多情环 - ABAP代码静态扫描 孔雀翎 - SAT 离别钩 - ST05 拳头 - 迷之方法??? Jerry在2018年开始用中文在微信公众号平台上写作之前,在SAP官方社区上总共写了639篇英文博客。 其中有一篇写于2013年介绍ABAP调试技巧的博客: Six kinds of debugging tips to find the source code where the message is raised 从2016年至今,在SAP社区上有超过十五万的阅读量。 实际的阅读量远远大于这个数字,因为2016年社区改版之后,文章阅读量清零了。 SAP社区在2016年改版前,有一个所谓的Gamification游戏化机制,博客每收到一个赞之后,作者会得到2点积分。这篇博客当时给Jerry赢得了不少社区积分。 该博客以一个实际例子,向大家介绍了Jerry多年ABAP编程生涯积累的6种错误消息调试方法。事实上Jerry实际工作中靠着这六种方法,对于我遇到形形色色的错误消息,几乎没有遇到调试不出抛出消息准确代码位置的情况,个人觉得这些方法还是相当管用的。 具体场景:在SE38里随便输入一个并不存在的程序名,点击Display按钮,显示一个提示消息

WinDbg常用命令系列---sx, sxd, sxe, sxi, sxn, sxr, sx- (设置异常)

試著忘記壹切 提交于 2019-12-10 14:07:15
简介 sx*命令控制调试器在正在调试的应用程序中发生异常或发生某些事件时采取的操作。 使用形式 sx sx { e | d | i | n } [ -c " Cmd1 " ] [ -c2 " Cmd2 " ] [ -h ] {Exception|Event| * } sx- [ -c " Cmd1 " ] [ -c2 " Cmd2 " ] {Exception|Event| * } sxr 参数 -c " Cmd1 " 指定在发生异常或事件时执行的命令。 当处理此异常的第一次机会发生时,无论此异常是否中断调试器,都将执行此命令。 必须将 Cmd1 字符串用引号引起来。 此字符串可以包含用分号分隔的多个命令。 -C 和带引号的命令字符串之间的空格是可选的。 -c2 " Cmd2 " 指定在发生异常或事件并且在第一次机会未处理时执行的命令。 当第二次处理此异常时,会执行此命令,无论此异常是否中断调试器。 必须将 Cmd2 字符串用引号引起来。 此字符串可以包含用分号分隔的多个命令。 -C2 和带引号的命令字符串之间的空格是可选的。 -h 更改指定事件的处理状态,而不是其中断状态。 如果 事件 为 cc 、 hc 、 bpec 或 ssec ,则无需使用 -h 选项。 Exception 以当前基数指定命令作用于的异常号。 Event 指定命令所作用的事件。这些事件用简短的缩写来表示。

CLR调试时的sos.dll/clr.dll/mscorwks.dll/mscordacwks.dll等动态库的版本对应

こ雲淡風輕ζ 提交于 2019-12-10 12:18:04
大家都知道,在调试托管代码时,一定会加载到sos/clr/mscorwks/mscordacwks这些动态库,才能够很好的完成我们的调试工作,那么他们的版本对应关系是怎样的呢,特别是clr.dll/mscorwks.dll有什么关系呢? clr是通用语言运行时库,对应的就是clr.dll/mscorwks.dll,在clr发展过程中,文件名发生了变化,他们的版本对应关系如下: .NET framework 版本 CLR 版本 CLR 文件名 1.1 1.1 mscorwks.dll 2.0 2.0 mscorwks.dll 3.0 2.0 mscorwks.dll 3.5 2.0 mscorwks.dll 4.0 4.0 clr.dll 4.5 4.0 clr.dll 我们在进行托管代码调试时,还会使用到sos.dll和mscordacwks.dll这两个动态库: SOS.dll SOS 调试扩展 (SOS.dll) 通过提供有关内部公共语言运行时 (CLR) 环境的信息,帮助你在 Visual Studio 和 Windows 调试器 (WinDbg.exe) 中调试托管程序。 mscordacwks.dll 这是进行调试的 数据访问组件 (DAC) 。SOS和CLR调试器使用 Data Access Component (DAC)来实现进程外调试

前端chrome浏览器调试总结

我的未来我决定 提交于 2019-12-10 11:45:48
看了一篇文章,结合自己实习的经历,觉得文章说得非常好,转载记录一下。 文章内容来源: 简书–cayley的编程之路 一、前言 转载博主说:初学者仅仅掌握了alert、console这些基本的调试方法。 我刚自学前端初期的时候,也是只用这种方法调试,天真地以后所有调试都可以通过console解决。后面去公司实习,看大佬们调试页面,这边打个断点,那边记录一下,马上就把问题定位出来了。确实,学会浏览器调试工具真的能大大提高自己的工作效率,尤其是在大项目的处理过程中。 二、调试工具 Elements 先来看这张图最上头的一行是一个功能菜单,每一个菜单都有它相应的功能和使用方法,依次从左往右来看 箭头按钮:用于在页面选择一个元素来审查和查看它的相关信息,当我们在Elements这个按钮页面下点击某个Dom元素时,箭头按钮会变成选择状态 设备图标:点击它可以切换到不同的终端进行开发模式,移动端和pc端的一个切换,可以选择不同的移动终端设备,同时可以选择不同的尺寸比例,chrome浏览器的模拟移动设备和真实的设备相差不大,是非常好的选择 Element内容:用来查看,修改页面上的元素,包括DOM标签,以及css样式的查看,修改,还有相关盒模型的图形信息。 下图我们可以看到当我鼠标选择id为lg_tar的div元素时,右侧的css样式对应的会展示出此id的样式信息,此时可以在右侧进行一个修改

Cmake编译PCL以及VS调试

痴心易碎 提交于 2019-12-10 11:14:38
使用Cmake编译程序 写在前头:本人是PCL小白,刚开始编译的时候,遇到很多问题,一开始在VS2017上直接配置PCL,遇到各种杂七杂八的bug,最后听从前人指导,说可以使用Cmake去编译程序,之前从未使用过Cmake,这次也只是浅浅的使用了一下,记录下来,一来是为了记录自己的成长,二来是分享给更多的人,共同交流学习~ 我的配置是:64位win7旗舰版电脑、3.16.0的Cmake,1.9.1的PCL,以下是我的网盘链接(官网下载太慢了): PCL链接:https://pan.baidu.com/s/1Q7Wq60HC-lxA2lFXBDOwpw 提取码:em7w Cmake链接:https://pan.baidu.com/s/1ZL4B8VIpIU3JFQJUImiNZA 提取码:wv3z 1.新建三个文件,如下图所示: 2.三个文件的内容分别如下: (1)CMakeList.txt cmake_minimum_required ( VERSION 2.8 FATAL_ERROR ) project ( Kd_tree ) find_package ( PCL 1.2 REQUIRED ) include_directories ( $ { PCL_INCLUDE_DIRS } ) link_directories ( $ { PCL_LIBRARY_DIRS } ) add

代码调试包Infragistics Windows Forms Test Automation发布v16.1|附下载

人走茶凉 提交于 2019-12-10 11:07:56
WinForms代码调试包 使您能够用完整的、功能全面的开发工具集再任何地点重启您的WinForms应用程序。它能帮助您轻松的提高您企业的桌面应用程序的易操作性,于此给您的客户带来极好的用户体验。我们对于Windows Forms已有相当扎实的开发经验,并且将会继续加大对所有Windows Forms控件的研发力度,以此来保障您会一直享有最快的,最稳定的工具。 下载最新版Infragistics Windows Forms Test Automation>>> 近日, Infragistics发布了新的Infragistics Ultimate v16.1,新版本从卓越的用户体验入手,选择内置UX和UI工具加速应用程序设计和开发。 尖端的现代Web工具 现在Ignite UI 16.1完全支持Angular 2 Beta和Bootstrap 4,它几乎包含了用户所需的所有功能,提高性能并减少向市场推广产品的时间。所有的Ignite UI控件都包含了Angular 2 Beta的组件定义,同时在GitHub上托管,允许您轻松地访问以声明方式构建的下一代JavaScript & HTML-based MVC应用程序。 加快设计到开发的速度 使用Indigo Studio构建免费代码、交互、响应式原型——现在您可享受新的可用性测试功能。测试设计方案并得到简洁式研究摘要、任务完成率

vs2013编译报错,未能将obj/..复制到bin/..,bin/...文件正被另一进程时候用

徘徊边缘 提交于 2019-12-10 05:08:21
原先的项目突然报错(原先的项目调试运行是没问题的) 错误 12 未能将“obj\Debug\**.exe”复制到“bin\**.exe”。超出了重试计数 10。失败。 错误 13 无法将文件“obj\Debug\**.exe”复制到“bin\**.exe”。文件“bin\**.exe”正由另一进程使用,因此该进程无法访问此文件。 解决方法: 这可能是个bug,重启系统或vs试试,在调试时,正常关闭程序。 也可能是代码问题,从外部打开程序,关闭后看还在不在任务管理器中残留 来源: CSDN 作者: sumjob 链接: https://blog.csdn.net/sumjob/article/details/103464581

GSM-MODEM调试备忘(二)

 ̄綄美尐妖づ 提交于 2019-12-10 02:47:51
7. 发送短消息后,收到出错信息+CMS ERROR 515   如果您的GSM MODEM在初始化期间或在指令执行过程当中GSM MODEM又接受新的指令,将会出现此错误。您必须等到初始化完成或指令执行完毕。   8. 如何才能知道您发送的短消息已被送达目的号码   a) 采用文本格式发送   在您采用文本格式发送短消息时,您的GSM MODEM须作以下的设置:   at+csmp=49,〈X〉,〈X〉,〈X〉   at+cnmi=〈X〉,〈X〉,〈X〉,1,〈X〉   〈X〉代表根据您的需要您所选择的合适的参数。   当您发送完短消息后,您将收到来自短消息中心的以下两种确认中的一种:   +CDS:〈X〉,〈顺序号〉,"电话号码","发送时间","接收时间",0   或:   +CDS:〈X〉,〈顺序号〉,"电话号码","发送时间","接收时间",48   确认中的最后个数代表了此短消息的传输状态。(0表示已经送达目的号码,48表示不可能将此送达目的号码)   b) 采用PDU格式发送   在您采用PDU格式发送短消息时,您的GSM MODEM须作以下的设置:   at+cnmi=〈X〉,〈X〉,〈X〉,1,〈X〉   〈X〉代表根据您的需要您所选择的合适的参数。   在您所要发送的PDU格式的短消息中,您须将短消息中心号码后的第一个字节设成31   在发送完短消息后

细谈xcode集成开发环境----我的笔记

只谈情不闲聊 提交于 2019-12-09 21:51:39
第一次接触苹果手机是在我的同学家里,他用的iPhone 5,不过现在苹果手机已经升级iPhone 6啦。 他说,苹果手机就是不一样,就是任性。 Mac操作系统 聊天用aim,类似于国内QQ,图片设计用iPhoto,类似于国内Photoshop,web设计用iweb,类似于国内的Dreamweaver。还有苹果商店,苹果音乐itunes。。。。。。 苹果,apple的理念就是不一样,也许Steve jobs是就是受上帝启发开发MAC,据说英国科学家牛顿通过苹果落地发现万有引力定律,接着便发现牛顿第一,第二定律。。。。。。他的灵感也来自于上帝。 其中苹果系统与Windows系统最大的不同,就是集成开发环境。 苹果系统用xcode,而国内用visual studio,微软集成开发环境。我一直使用 visual studio编程。接触xcode集成开发环境,也许是同学的要求,他以前学过Android手机开发,与c#项目开发,现在改学苹果编程。他说做苹果程序员,工资待遇高,高于学Android,PHP语言。 初探xcode Xcode是苹果公司向开发人员提供的 集成开发环境 (非开源),用于开发Mac OS X、iOS的应用程序。 其前身是继承自NeXT的Project Builder,运行于苹果公司的 Mac操作系统 下。Xcode 2.0 是开发人员建立OS X 应用程序的最 快捷方式