首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏码猿技术专栏

    IDEA调试技巧

    基本界面 3. 变量查看 4. 计算表达式 5. 断点条件设置 6. 线程切换 7. 强制抛异常 8. 强制返回 9. 笔者有话说 导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA调试用过吧,你说说怎么设置断点条件? 作为一名资深的老司机,IDEA调试可以说是家常便饭,如果不会debug,我都不信你读过源码,就别和我说原理了,直接pass掉。 基本界面 ? ④ 调试按钮:一共有8个按钮,调试的主要功能就对应着这几个按钮,鼠标悬停在按钮上可以查看对应的快捷键。 ⑤ 服务按钮:可以在这里关闭/启动服务,设置断点等。 强制抛异常 这是IDEA 2018年加入的新功能,可以直接在调试中抛出指定的异常。

    1.6K21发布于 2020-03-24
  • 来自专栏IDEA

    IDEA】远程调试

    现在很多项目都是直接部署到服务器上,通常都是没有GUI界面的,也就是说没有办法进行本地调试。 在日常工作中远程调试是非常重要的一个技能,虽然说这个没办法解决线上问题,但是可以在测试环境下进行远程调试从而找到线上问题的解决方法,因为这种方式比日志更加清晰,操作难度更低。 weblogic是有自己的调试方式的,但是我没有深究,这个对于我要表述的内容关系不大,因此没有说明。 此时我们输出启动脚本命令startWebLogic即可看到服务已经停住了,在等待IDEA进入Debug模式。 IDEA设置 按照如图所示步骤即可配置好调试模式,名字改不改其实关系不大。 没导入之前可以看到红色框选部分是只有jar包的,IDEA扫描完成之后会跳出这个界面,这里是因为我的Library中已经存在了一个modeles,也就是导入过了。

    1.5K10编辑于 2024-01-15
  • 来自专栏工具使用

    IDEA 远程调试

    远程调试的原理 本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息。 被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令。 调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接。 如何进行远程调试 idea设置 [在这里插入图片描述] 远程项目设置 idea设置好了,复制命令行参数,我们需要去启动项目的地方设置,启动项目有通过tomcat启动的,也有通过springboot内置tomcat JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005" 到此就设置好了,在idea 中打上断点,然后启动Remote来进行调试吧。

    2.1K10发布于 2020-08-20
  • 来自专栏Java Tale

    IDEA 远程调试

    IDEA 远程调试,像运行本地代码一样调试远程主机上的程序,以排查远程程序的BUG或代码执行流程。 概述 原理:本机和远程主机的两个 VM 之间使用 Debug 协议通过 Socket 通信,传递调试指令和调试信息。 被调试程序的远程虚拟机:作为 Debug 服务端,监听 Debug 调试指令。 调试程序的本地虚拟机:IDEA 中配置的 Remote Server,指定 Debug 服务器的Host:Port,以供 Debug 客户端程序连接。 启动脚本中添加选项,并重启: JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=20400" IDEA

    1.9K50编辑于 2022-06-12
  • 来自专栏路过君BLOG from CSDN

    idea 远程调试

    配置IDEA远程调试 菜单Run - Edit Configurations… 增加远程配置 填写远程服务IP,调试端口,选择待调试的模块路径 复制用于remote JVM的命令行参数 2. 5005表示监听5005端口,并接受任何地址的请求 如果写5005则只能接受本地请求 启动服务输出如下 Listening for transport dt_socket at address: 5005 3. 启动远程调试 选择远程调试项目 执行调试 启动调试输出如下 Connected to the target VM, address: '10.1.2.221:5005', transport: 'socket

    2.1K20发布于 2020-07-24
  • 来自专栏在水一方

    idea远程调试

    前言 实际开发中由于项目是部署在Linux服务器上,本地开发可以通过debug进行调试,然而在服务器上运行时出现问题无法直接定位到具体是哪行代码出现了bug,加大问题的排查,好在在idea中可以实现远程调试 java -Xdebug -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar meas.jar 启动本地的远程调试 agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 开放5005端口 启动本地调试 该问题尚未解决: 参考视频网址:

    1.5K20编辑于 2022-06-14
  • 来自专栏全栈程序员必看

    IDEAIDEA debug断点调试技巧

    一、Debug开篇   首先看下IDEA中Debug模式下的界面。   如下是在IDEA中启动Debug模式,进入断点后的界面,我这里是Windows,可能和Mac的图标等会有些不一样。 下面的On frame deactivation,在IDEA窗口失去焦点时触发,即一般你从idea切换到浏览器的时候,idea会自动帮你做的事情,一般可以设置Do nothing,频繁切换会比较消耗资源的 [图3.2] [图3.3]   3、在Variables里查看,这里显示当前方法里的所有变量。 [图3.4]   4、在Watches里,点击New Watch,输入需要查看的变量。 [图6.2]    [图6.3]   3、再说说右边的Filters过滤,这些一般情况下不常用,简单说下意思。      那是因为IDEA在Debug时默认阻塞级别是ALL,会阻塞其它线程,只有在当前调试线程走完时才会走其它线程。

    4K30编辑于 2022-07-22
  • 来自专栏程序萌部落

    远程IDEA调试Storm

    现在IDEA编译成功topo后,使用WinSCP将打包好的包传到主节点 注意:打包之前–要讲 [ 本地模式 ] 改为 [ 集群模式 ] //本地测试模式 LocalCluster java都不算路径,Random才对应eclipse中的package 附SenqueceBolt: package Random; /** * Created by hadoop on 2017/3/ Auto-generated method stub } } 附RandomSpout: package Random; /** * Created by hadoop on 2017/3/ (new Fields("randomstring")); } } 附FirstTopo: package Random; /** * Created by hadoop on 2017/3/ = null && args.length > 0) { conf.setNumWorkers(3); StormSubmitter.submitTopology

    1.9K20发布于 2019-08-08
  • 来自专栏工具使用

    IDEA多线程调试

    Thread(myRunnable, "线程1"); Thread thread2 = new Thread(myRunnable, "线程2"); Thread thread3 = new Thread(myRunnable, "线程3"); thread1.start(); thread2.start(); thread3.start (); } } 调试问题重现 [在这里插入图片描述] [在这里插入图片描述] [在这里插入图片描述] 可以看到调试的时候会在多线程之间乱跳,很不利于问题的排查。 设置断点每个线程都会走 右键断点,点选Thread [在这里插入图片描述] 设置只调试一条线程 右键断点,点选Thread,同时加上currentThread.getName().equals("线程1

    1K60发布于 2020-08-19
  • 来自专栏爱编码

    idea高级调试技巧

    来源:cnblogs.com/yjmyzz/p/idea-advanced-debug-tips.html 一、条件断点 循环中经常用到这个技巧,比如:遍历1个大List的过程中,想让断点停在某个特定值 : 如果想希望下一个断点位置是第2句诗句,可能要失望了: 如果想让线程在调试时,想按自己的愿意来,让它停在哪个线程就停在哪个线程,可以在图中3个断点的小红点上右击, 即:Suspend挂起的条件是按每个线程来 把这3个断点都这么设置后,再来一发试试 注意上图中的红框位置,断点停下来时,这个下拉框可以看到各个线程(注:给线程起个容易识别的名字是个好习惯!) ,就是在本机与远程建立scoket通讯,所以端口不要冲突,而且本机要允许访问远程端口,另外这一段参数,放要在-jar 或 ${main_class}的前面 4.2 idea中设置远程调试 然后就可以调试了 ,现在IntelliJ IDEA提供了一种可视化的调试技巧。

    1K30发布于 2021-10-14
  • 来自专栏Java探索之路

    IDEA 开启远程调试

    idea 远程调试 背景 在编写代码时, 总会遇到这样或者那样的bug. 这有些bug 特别是业务逻辑的bug . 在生产或测试环境好复现而在开发环境不好复现. 现在提供的一种思路, 就是远程调试: 我们可以在本地直接调试生产环境或者测试环境的代码. 只需我们本地代码和远程部署的代码一致. 远程主机就会通过socket 将程序执行情况同步到本地 操作 下面以idea 为例 注意事项 如果服务器配置了 iptables/防火墙 , 需要放开对应的端口 如果使用的是云服务器, 则也需要放开对应 socket端口的安全组 如果使用开发工具的是eclipse , 远程调试见这位大佬的博客 传送门 如果使用docker 部署的jar, 则需要进行如下配置 docker 项目进行远程调试 本质和上面步骤差不多 , 但是需要在docker 中, 添加一个内部端口和外部端口的映射 以便我们本地能够通过这个映射访问docker 项目部署的容器 步骤: 关于远程调试原理和配置参数解释.

    1.2K20编辑于 2022-04-02
  • 来自专栏java小白

    IDEA进行源码调试

    File–>Project Structure —>SDKS—>Sourcepath—>选择自己jdk目录下面的src.zip文件 File–>settings 取消java.和jav

    68050发布于 2018-05-24
  • 来自专栏用户1337634的专栏

    使用IDEA调试sbt

    sbt&play没有main函数,每次使用sbt命令启动,但是就无法使用IDEA调试,本文介绍使用远程调试的方式实现 远程调试 sbt启动调试端口9999 sbt -jvm-debug 9999 run 创建远程调试 其他 sbt添加javaoption 使用-J前缀,会把参数传递给JVM sbt -J-javaagent:skywalking-agent.jar -jvm-debug 9999 run 参考 Run project with java options via sbt Debugging SBT project with Play in IntelliJ IDEA

    1.2K30编辑于 2021-12-09
  • 来自专栏菩提树下的杨过

    idea 高级调试技巧

    两年前写过一篇关于idea的高级用法,今天再来一篇关于调试方面的技巧讲解:  一、条件断点 循环中经常用到这个技巧,比如:遍历1个大List的过程中,想让断点停在某个特定值。 : 如果想希望下一个断点位置是第2句诗句,可能要失望了: 如果想让线程在调试时,想按自己的愿意来,让它停在哪个线程就停在哪个线程,可以在图中3个断点的小红点上右击, 即:Suspend挂起的条件是按每个线程来 把这3个断点都这么设置后,再来一发试试 注意上图中的红框位置,断点停下来时,这个下拉框可以看到各个线程(注:给线程起个容易识别的名字是个好习惯!) 四、远程调试 这也是一个装B的利器,本机不用启动项目,只要有源代码,可以在本机直接远程调试服务器上的代码,打开姿势如下: 4.1 项目启动时,先允许远程调试 java -server -Xms512m ,就是在本机与远程建立scoket通讯,所以端口不要冲突,而且本机要允许访问远程端口,另外这一段参数,放要在-jar 或 ${main_class}的前面 4.2 idea中设置远程调试 然后就可以调试

    1.3K100发布于 2018-01-18
  • 来自专栏电光石火

    IDEA启动远程调试

    1.在idea做如下设置并保存 ? 2.远程jar开启调试模式(就是在平时的java -jar后面接上上面复制出来的一句话): java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend

    1K20发布于 2020-02-17
  • 来自专栏全栈程序员必看

    idea配置远程debug_idea远程调试

    一、idea设置 1.在idea工具栏,Edit Configurations 2.添加remote 3.部署远程服务 1: 将项目打成jar包上传到服务器上,然后使用命令启动。 address=9992 -jar test-demotr-0.0.1-SNAPSHOT.jar -Dspring.profiles.active=local & 2:远程使用上面拼接的部署命令启动项目 3: 本地debug启动(本地代码需要与服务器部署的保持一致) Tips: 服务器上独立给idea监听的端口一定要放开,如果没有连接成功,看一下是不是服务器防火墙开了,然后查一下怎么开放端口。

    3.3K20编辑于 2022-09-30
  • 来自专栏后端码匠

    Intellij IDEA 调试功能总结

    本文简单介绍 IDEA 编辑器的调试功能,主要包括断点调试、单点调试、高级调试。可以收藏本文章,使用到的时候方便查找。 1.设置断点 ? 选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可。 2.开启调试会话 ? 点击红色箭头指向的小虫子,开始进入调试。 ? IDE下方出现 Debug 视图,红色的箭头指向的是现在调试程序停留的代码行,方法 f2() 中,程序的第11行。 3.单步调试 3.1 step over ? 点击红色箭头指向的按钮,程序向下执行一行(如果当前行有方法调用,这个方法将被执行完毕返回,然后到下一行) 3.2 step into ? 具体步骤如下: 在自定义方法发f1()处设置断点,执行调试 ? 点击 ? ? 3.3 Force step into ? 该按钮在调试的时候能进入任何方法。 3.4 step out ? 高级调试 4.1 跨断点调试 设置多个断点,开启调试。 ? 想移动到下一个断点,点击如下图: ? 程序将运行一个断点到下一个断点之间需要执行的代码。

    1.4K10发布于 2021-05-10
  • 来自专栏一个安全研究员

    IDEA怎么远程调试应用?

    本文将结合着远程调试weblogic来讲解如何使用IDEA调试远程应用,如果你还不清楚,建议收藏,方便查阅。 0x03 IDEA配置远程调试 现在目标应用已经运行在调试模式,且我们也知道其监听的端口了,现在就是需要在IDEA上进行配置了。 同样以Weblogic为例 用IDEA随便新建一个工程 然后IDEA的右上角,配置一下 ? 创建一个remote server ? 配置remote server ? 最后选择在右上角我们刚刚创建的remote server,然后点击这个小虫子可以从控制台看到,我们的idea已经成功连接到远端的应用 ? 你以为这就结束了吗? 然后选择对应的目录就行了,一般就是把包含jar包的目录加进来,添加完过后就可以在IDEA中访问到很多jar包了,并且IDEA会自动反编译这些jar包中的class文件,我们还可以在对应的文件处下断点,然后就可以开始愉快的调试

    2.2K10发布于 2020-08-05
  • 来自专栏全栈程序员必看

    IntelliJ IDEA 远程debug调试

    倘若是测试环境,我们还多了一项可供选择的手段——远程调试——将程序在测试环境中以debug模式启动,在本机使用IDEA在工程中设置断点进行调试。 suspend=n,address=9087 具体参数详解: -Xdebug 通知JVM工作在DEBUG模式下; -Xrunjdwp 通知JVM使用(Java debug wire protocol)运行调试环境 该参数同时包含了一系列的调试选项; transport 指定了调试数据的传送方式,dt_socket是指用SOCKET模式,另有dt_shmem指用共享内存方式,其中,dt_shmem只适用于Windows 平台; address 调试服务器的端口号,客户端用来连接服务器的端口号; server=y/n VM 是否需要作为调试服务器执行; suspend=y/n 是否在调试客户端建立连接之后启动 VM

    1.5K10编辑于 2022-09-30
  • 来自专栏IDEA教程

    最新IDEA激活教程!IDEA接口调试IDEA REST Client 功能!

    一个被低估的功能:IDEA REST Client 接口调试不用我多解释了,这是每一位程序员必备的技能。 IDEA REST Client 可以满足你所有开发和调试的需求,并且支持环境配置区分以及接口响应断言和脚本化处理,请求配置也可以用文件配置描述。 IDEA REST Client控制台 打开 IDEA,点击顶部菜单栏的 Tools --> HTTP Client --> Test RESTFUL Web Service,打开 IDEA REST Authorization :Basic这种方式认证的话,可以点击下图所示的按钮,会弹出填充用户名和密码的窗口出来,填完后会自动补充到 Authorization 的 header 里面去. [2.png] 历史请求记录 IDEA 会自动地将近期执行的50个请求保存至 http-requests-log.http 文件中,然后将该文件存储在项目的 .idea / httpRequests / 目录下。

    1.4K20编辑于 2022-03-23
领券