我是如何用IDEA调试BUG的?】的更多相关文章

最近小明的bug有点多,忙的连王者荣耀都顾不上玩了,导致现在不得不抽点时间研究一下作为当前大多Java程序员开发工具的IDEA DEBUG功能,以提高效率. 一.条件断点 场景:我们在遍历某个集合,期望程序在满足某些预设条件时停住,比如:沐芳老师在课堂上点名,需要在点到小明的时候暂停确认一下是否有人在帮小明答"到"! 那沐芳老师可以这样: 右击断点旁边的小红点(断点),弹出面板,在Condition这里填入暂停条件,这样调试时,当程序满足条件时就会稳稳地停在student= "…
原文链接:http://xiaohuafyle.iteye.com/blog/1705494 调试竟然有这么多技巧,亏我以前竟不知道...   Eclipse这个开发工具为我们调试bug提供了非常便利的工具,断点.可是,大部分经验丰富的程序员并没有能够充分的掌握断点的用法,以下,我总结了断点的七个技巧供大家参考学习.  1.条件断点  条件断点,顾名思义就是一个有一定条件的断点,只有满足了用户设置的条件,代码才会在运行到断点处时停止.  在断点处点击鼠标右键,选择最后一个"Breakpoint…
如果你手里有一个现成的EXE, 以及EXE相关联PDB文件, 还有相关联的CPP文件和H文件. 你如何用VS调试? (当然你可以选择WinDbg.不过这里就讨论VS) 你或许想问我干嘛不从一开始就用VS写代码? 设想, 有一个人喜欢用 NMAKE 和 MAKEFILE 创建工程. 他已经编译链接好了. 得到了 EXE. PDB. 现在他叫你帮他调试一下. 你又喜欢用VS调试, 怎么办? 对. 这就是下面要说的. 首先推荐阅读这个链接作为热身: https://msdn.microsoft.com…
    注意事项及小结: (1)Line Breakpoint:如果设置Conditional,监控的变量需要比当前行高一级block,譬如for(int i=0;i<20;i++)中的i,for循环内部可以对i设置条件 (2)Java Exception Breakpoint的监控范围是Class,不需要指定行,在Breakpoints面板右侧上的图标为J! (3)Watchpoint:针对字段(3)Method Breakpoint:与将Line Breakpoint设在方法中的第一行相同…
有时代码上线了,突然就碰到了坑爹的错误.或者有时看别人家线上的代码,对于一个文件想 fork 下来试试效果又不想把全部文件拉到本地,都可以使用 fiddler 的线上调试功能. 比方说我们打开携程的首页 www.ctrip.com,看到个叫 allsearch.js 的 js 文件,想往里加点代码调试下. 我们先把这个 js 文件下载到本地. 然后打开 fiddler(当然首先得下载安装 fiddler,参考如何用 fiddler 代理调试本地手机页面),浏览器访问 www.ctrip.com,…
---又名我讨厌伸手党 我又把个人博客的子标题改为了 你可以在书和搜索引擎找到90%的问题的答案,为什么要问别人?剩下的10%或许没有答案,为什么要问别人? 这是由于最近在网上看到各种伸手,对于我这种可以说从未伸过手,基本靠搜索解决平时遇到的各种bug,哪怕是做菜放什么调料也是百度的人,真是有点小气愤 并不是说什么问题都要自己解决,完全不要问别人,而是看到网上和周围同学,太多和我一样的新手一遇到问题甚至都不想就发帖,发消息问xxx怎么办,有些问题把帖子标题原封不动扔百度,第一行就是答案,简直丧心…
本帖用以记录在ZCU102板级调试间遇到的Bug. 1.PL端的AXI总线在读取DDR中的数据的时候,在一个burst内不能跨越page boundary.跨越page boundary会在该burst内下一页数据的读取错误. 2.直接定义一个指针,给这个指针赋给一个实际的物理地址,对于指针int *p, p = p+1,并不是这个指针的值加了1,而是加了 sizeof(int)的值.…
两天,一个小bug 我调试了两天,最终调试成功了.还是在别人的帮助下. 问题是刷新相关的.当用户登录了,其他的页面都要刷新.也就是加上一些参数. 但是有一个fragment一直加不上,其他挨着的两个都加上了. 后来同事说,你不要在表象上思考为什么,要在底层,你就抓网页的url,然后看看差在哪个参数,然后我抓了很多参数,很认真,认真的写在了notpad++上,然后慢慢的找,真的找到了.调试需要耐心,需要细心,尤其是在不是特别熟悉的情况下. 然后,我找为什么都刷新了,就他没刷新.后来发现,他刷新了两…
在以往的工作中,线上一有bug,就需要把文件弄到本地来改,但经常会碰见本地环境又和线上不一样,导致调试困难,闭着眼睛改好之后传到线上去看对不对,不对的话又要改,循环往复,要多麻烦就有多麻烦啊. 今天给大家介绍一款前端神器,Fiddler ,它有个功能就是把线上文件映射到本地,通过拦截的方式,你在本地修改的内容实时的反映到线上,线上的环境,本地的文件,这非常方便我们调试,而且也不会给线上带来严重的错误,因为这些操作只对你本机有效哦. 点击下面链接: http://blog.mingsixue.co…
airflow 和 pycharm 相关基础知识请看其他博客 我们在使用 airflow的 dag时. 每次写完不知道对不对的,总不能到页面环境中跑一下,等到报错再调试吧.这是很让人恼火的事情 这里我想分享  如何用 pycharm 对 airflow 进行调试 airflow的运行环境,依赖于  airflow.cfg和  airflow_home, pycharm 的项目目录应该和 airflow_home 相同目录. 1.  airflow的配置 详细配置看请看其他博客,这里只是表名我的 …
  扩展阅读 趣图:大神写实,左脚程序继续运行,右脚程序调试 趣图:Bug 多了,总有一个会把你坑了 趣图:领导在旁,只求代码无Bug…
最近发现golang社区里出了一个新星的微服务框架,来自好未来,光看这个名字,就很有奔头,之前,也只是玩过go-micro,其实真正的还没有在项目中运用过,只是觉得 微服务,grpc 这些很高大尚,还没有在项目中,真正的玩过,我看了一下官方提供的工具真的很好用,只需要定义好,舒适文件jia结构 都生成了,只需要关心业务, 加上最近 有个投票的活动,加上最近这几年中台也比较火,所以决定玩一下, 先聊聊中台架构思路吧,look 先看架 中台的概念大概就是把一个一个的app 统一起来,反正我是这样理解…
一.简介 这篇文章我主要会介绍CodeBlocks的调试功能,并简单讲述如何使用它. 二.前言 大家好,最近和小伙伴们讨论修改程序的时候,我突然想到,授人以鱼不如授人以渔(指调试),于是这篇文章应运而生,当然了,这是笔者第一次写博客并发表,如果有错误或者可以改进的地方,欢迎探讨. 三.什么是调试? 在写程序的过程中会不可避免的产生BUG,而这个时候调试器就是提升解决问题效率的好工具了,它能够快速的定位到BUG的位置,并极大极大的提升你优化和修改程序的效率. 四.在CodeBlocks中如何进行调…
有时候,我们经常会需要调试 java -jar xxx.jar方式运行的代码,而不是必须在Eclipse中用Debug或者Run的方式运行.比如我们拿到的SourceCode不完整.Java提供了一种调试的机制. 1. 我们可以使用命令: java -agentlib:jdwp=transport=dt_socket,server=y,address=8050,suspend=y -jar xxx.jar 来打开调试.运行后,它会在8050端口监听调试器的Attach的信号. 2. 然后,我们在…
1. 条件断点 断点大家都比较熟悉,在Eclipse Java 编辑区的行头双击就会得到一个断点,代码会运行到此处时停止. 条件断点,顾名思义就是一个有一定条件的断点,只有满足了用户设置的条件,代码才会在运行到断点处时停止. 在断点处点击鼠标右键,选择最后一个"Breakpoint Properties" 断点的属性界面及各个选项的意思如下图, 2. 变量断点 断点不仅能打在语句上,变量也可以接受断点, 上图就是一个变量的打的断点,在变量的值初始化,或是变量值改变时可以停止,当然变量断…
Fiddler Fiddler调式使用知多少(一)深入研究 微信fiddle 微信fiddle Chrome Google Chrome 官方 Chrome - 基础 Chrome - 进阶 Chrome - 性能 Chrome - 性能进阶 Chrome - 移动 Chrome - 使用技巧 Chrome - Console控制台不完全指南 Chrome - Workspace使浏览器变成IDE network面板 chrome开发工具快捷键 chrome调试工具 Chrome 开发工具 Wo…
症状: 在使用startActivityForResult调用照相机或者选择图片的时候,总是onActivityResult立马返回,resultCode=0 CANCEL. startActivityForResult(intent,IMAGE_PICK_REQUEST); 因为是在fragment里面使用startActivityForResult有问题,所以开始以为是因为fragment导致的问题,各种调试都无法解决问题. 解决方法: 后来突然看到manifests里面看到activity…
按F12打开调试工具…
VS Code相关插件:Chinese (Simplified) Language Pack for Visual Studio Code Debugger for Chrome ESLint Vetur   一 安装:安装VS Code插件  Debugger for Chrome 二 配置:config下index.js cacheBusting  由  true 改为 false//cacheBusting: true,   cacheBusting:false, devtool 由 ch…
前阵子开发了公司领劵中心的项目,这个项目是以redis作为关键技术落地的.       先说一下领劵中心的项目吧,这个项目就类似京东app的领劵中心,当然图是截取京东的,公司的就不截了...   其中有一个功能叫做领劵的订阅推送.什么是领劵的订阅推送?就是用户订阅了该劵的推送,在可领取前的一分钟就要把提醒信息推送到用户的app中.本来这个订阅功能应该是消息中心那边做的,但他们说这个短时间内做不了.所以让我这个负责优惠劵的做了-.-!.具体方案就是到具体的推送时间点了,coupon系统调用消息中心…
原文地址:https://www.cnblogs.com/zzpbuaa/p/5443269.html 有时候,我们经常会需要调试 java -jar xxx.jar方式运行的代码,而不是必须在Eclipse中用Debug或者Run的方式运行.比如我们拿到的SourceCode不完整.Java提供了一种调试的机制. 1. 我们可以使用命令: java -agentlib:jdwp=transport=dt_socket,server=y,address=8050,suspend=y -jar x…
原理: 首先 scrapy 命令其实就是一个python脚本,你可以使用 which scrapy 查看该脚本的内容: from scrapy.cmdline import execute sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) sys.exit(execute()) 而命令行运行scrapy项目的方式如下: scrapy crawl dmoz             #注意,其中的dmoz是项目目录下的…
1.php中的dump,echo,exit 2.浏览器的f12 3.安装xdebug扩展(debugger调试器,profiler探查器,trace代码跟踪) profile日志能记录函数的执行耗时和调用关系等信息, trace日志,能够记录代码执行流程 包括时间索引,内存使用,内存增量,调用层级,函数名称,函数参数, 代码所在文件名,代码所在文件行等信息. time index:时间索引 memory usage:内存使用 memory delta:内存增量(需要开启:show_mem_del…
转:http://blog.csdn.net/wfdtxz/article/details/7368357 GDB 是GNU开源组织发布的一个强大的UNIX下的程序调试工具.或许,各位比较喜欢那种图形界面方式的,像VC.BCB等IDE的调试,但如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具有比VC.BCB的图形化调试器更强大的功能.所谓“寸有所长,尺有所短”就是这个道理. 一般来说,GDB主要帮忙你完成下面四个方面的功能: 启动你的程序,可以按照你的自定义的要求随心所欲的运行程序.…
第一步:打开iphone手机的开发者模式,流程是:[设置]->[Safari]->[高级]->开启[Web检查器] ,如图1.图2 图1 图2第二步:打开Mac上Safari的开发者模式,流程是[Safari]->[偏好设置]->[高级]->[在菜单栏中显示“开发”菜单]勾选 图3第三步:用数据线将iphone手机和mac连接起来,在电脑的safari中按照流程执行:[开发]->[手机名称]->[正在调试的网站] 图4最后,就可以按照调试pc端页面的思路来调…
我是陈皮,一个在互联网 Coding 的 ITer,微信搜索「陈皮的JavaLib」第一时间阅读最新文章,回复[资料],即可获得我精心整理的技术资料,电子书籍,一线大厂面试资料和优秀简历模板. ThreadLocal 简介 Threadlocal 类提供了线程局部变量功能.意思可以在指定线程内部存储数据,并且哪个线程存储的数据只能线程它自己有权限取得. 底层原理其实是在线程内部维护一个 Map 变量,然后 Threadlocal 对象作为 key,要存储的数据作为 value.而 Threadl…
前阵子开发了公司领劵中心的项目,这个项目是以redis作为关键技术落地的.       先说一下领劵中心的项目吧,这个项目就类似京东app的领劵中心,当然图是截取京东的,公司的就不截了...   其中有一个功能叫做领劵的订阅推送.什么是领劵的订阅推送?就是用户订阅了该劵的推送,在可领取前的一分钟就要把提醒信息推送到用户的app中.本来这个订阅功能应该是消息中心那边做的,但他们说这个短时间内做不了.所以让我这个负责优惠劵的做了-.-!.具体方案就是到具体的推送时间点了,coupon系统调用消息中心…
https://devtalk.nvidia.com/default/topic/804306/nsight-visual-studio-edition/nsight-4-5-can-t-debug-net-applications/   Q: I have an OpenGL application written in C#. When I try to debug the application using Nsight 4.5, I get the following error: La…
前言: 话说,已经很久没有在博客园更新博客了,之前写的关于go语言的系列学习文章<让我们一起Go>也由于种种原因一度中断.但是,正如我之前在文章中所写,可以慢慢来,但是对于Go语言的学习却不会停止,当然不只是Go语言,对于.net技术还有其它等等等都不会停止.或许文章题目取得不太好(实在想不好名字了),因为题目中我特意强调了下是Go语言,不过我确实没有想表达XX语言更好的意思哦(或许是我想多了^_^).因为经常有人会挑起语言或者技术之争,而且为了争论XXX语言更好而争的面红耳赤甚至人生攻击.如…
1.ascii' codec can't encode characters in position 0-4: ordinal not in range(128) 原因是python2.X默认的编码是ASCII码,只能处理通过ASCII编码的字符,自然汉字就不行了. 解决方法,在django项目的manage.py文件头部加上下面代码: import sys reload(sys) sys.setdefaultencoding('utf8') 然后就可以采用utf8编码了,也就可以处理中文数据了…