工作中使用IDEA进行调试的技巧

IDEA常用配置及使用 支持的语言和框架:IDEA在支持更多编程语言和框架方面可能更为全面,包括Java、Kotlin、Python、JavaScript、Ruby等。功能和插件:IDEA被认为是功能更强大的IDE之一,它提供了更多的内置功能和集成工具,如代码分析、智能提示、重构工具等。因此,它们的开发和支持团队不同。因为鼠标悬浮是要放到代码上才能进行显示,这边先自行创建一个项目给大家演示设置鼠标悬停,在后面会演示Maven项目的创建。在Eclipse里,项目都是自动编译的,IDEA里默认不是,我们需要配置下; 阅读详情
AI摘要

本文围绕IDEA社区版2022展开,详细介绍了多种调试技巧。包括行断点、方法断点、接口方法断点、异常断点、字段断点、带条件的断点的设置与调试,还提及表达式解析、断点触发打印信息等操作,以及项目启动时参数传递和好用的导航技巧。

此IDEA调试是在IDEA社区版2022版本

行断点

设置断点

当前行的左侧,鼠标左键点击,出现红色的圆点,即断点,这是属于行断点
在这里插入图片描述

debug运行模式

在当前类,鼠标点击右键,出现菜单,然后选择Debug 'StringDemo.main()
在这里插入图片描述
或者点击工具栏,debug按钮
在这里插入图片描述
然后出现debug面板
在这里插入图片描述

常见操作

跳过当前所有断点

在这里插入图片描述

查看断点面板

在这里插入图片描述
在这里插入图片描述

断点挂起

打开断点配置面板,去除Suspend
在这里插入图片描述
然后原来断点从红色变成黄色,当前行断点是不生效的
在这里插入图片描述
debug模式下运行程序,会跳过断点处

方法断点

在方法这里的方法名左侧,使用鼠标左键点击,就会出现一个菱形断点。方法断点设置成功之后,程序运行的时候,会自动停在方法的第一行
在这里插入图片描述

接口方法设置断点

接口方法设置断点,debug模式下,执行接口的方法断点的时候,会自动跳到接口的实现类对应的方法中
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

异常断点

打开断点配置面板
在这里插入图片描述
在这里插入图片描述

添加需要鉴定的异常断点

在这里插入图片描述
在这里插入图片描述
添加需要监控的异常,这里可以进行输入异常名称进行搜索,也可以输入自定义的异常名称
在这里插入图片描述
在这里插入图片描述
添加成功之后,程序在运行中出现了异常断点中指定的异常,就会停止继续执行。这里我监听的是空指针异常,程序在运行过程中遇到空指针异常,就会停止继续执行。

debug调试

在这里插入图片描述

字段断点

package com.demo;

public class StringDemo {

    public static void printPerson(){
        Person person = new Person("张三",12);
        System.out.println(person);
    }

    public static void main(String[] args) {
        printPerson();
    }
}

package com.demo;

public class Person {
    private String name;
    private int age;

    public Person(String name,int age){
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }
}

设置字段断点

在这里插入图片描述

debug调试

debug模式运行StringDemo,程序会跳到字段值发生改变的地方
在这里插入图片描述
在这里插入图片描述

带条件的断点

在这里插入图片描述
在这里插入图片描述
然后点击Done按钮,条件表达式设置成功。debug运行之后,会在满足条件的断点处停顿,但是不影响程序的执行结果
在这里插入图片描述
在这里插入图片描述
运行结束,输出结果
在这里插入图片描述

表达式解析

在这里插入图片描述
在这里插入图片描述

断点触发打印信息

鼠标右键断点的地方
在这里插入图片描述
然后点击More(Ctrl+Shift+F8),打开以下界面
在这里插入图片描述
然后debug模式运行后,程序运行到指定断点,控制台就会打印信息
在这里插入图片描述
输出断点所在行的信息

打印堆栈信息

鼠标右键断点的地方
在这里插入图片描述
在这里插入图片描述
然后重新debug模式,控制台打印信息
在这里插入图片描述

工具栏

项目启动时,把参数传递进来

public class RuntimeParamTest {
    // 多个测试环境,很多配置用了一个魔术值
    // java -jar springboot-demo.jar -D
    // jenkins启动的时候,通过传递参数替换魔术值,从而多个环境一套配置
    // 本地调试,如何替换魔术值呢
    // 解决方法,idea运行时传参
    // 程序的参数
    public static void main(String[] args) {
        for (String arg : args) {
            System.out.println("program para = " + arg);
        }
        // VM options(jvm 参数)
        final String vmPara= System.getProperty("vmPara");
        System.out.println("vmPara = " + vmPara);
        // Environment variable(环境变量)
        final String envParam = System.getenv("envParam");
        System.out.println("envParam = " + envParam);
    }
}

配置程序的参数

参数是通过空格来进行分割的
在这里插入图片描述
在这里插入图片描述
然后运行程序,输出结果
在这里插入图片描述

配置jvm参数

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
jvm参数以-D为前缀,后面是参数名称=参数值
-DvmPara=123表示Jvm参数vmPara=123
在这里插入图片描述
运行程序,控制台输出
在这里插入图片描述

环境变量

是使用key=value的方式配置值
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
程序执行之后,输出结果
在这里插入图片描述

好用的导航技巧

添加书签

在代码阅读的时候,使用书签来标记代码中重要的实现部分

IntelliJ IDEA(2024版) 的安装、配置与使用教程:常用配置、创建工程等操作(很详细,你想要的都在这里) 如果你在开发过程中遇到突然代码文件不能进行检查和提示,可以来看看这里是否有开启该功能。// 如果当前主题不希望使用默认字体、字体大小、字体行间距,还可以单独设置;// 如果对安装的主题插件不满意,还可以找到此插件,进行卸载 – 重启。如下图标注所示,默认就是。此目录可看成是最重要的目录,没有之一,注意:安装新版本的。会自动扫描硬盘上的旧配置目录,指的就是该目录。主要配置功能、自定义的代码模板、自定义的文件模板、自定义的快捷键、// 若存在卸载之前版本的操作,那么可能需要再重复安装的操作; 阅读详情

相关推荐

实用的IDEA配置和操作技巧总结

有时候我们在开发中会遇到一个对象需要set多个值,我们就可以安装这个插件:安装完成并重启IDEA后,对着需要进行set的对象键入alt+enter即可根据需要完成set,以笔者为例,我们要设置默认值,所以我们就选择选项:如下图所示,打出勾选的字母就会弹出白色框中的代码段,所以如果我们有希望可以快捷输出的代码也可以自己制作一个代码模板。

禅与计算机程序设计的艺术 4447

IDEA环境配置汇总

IDEA环境配置汇总。

Sherry 2万+

IC版图设计布局经验90条!

13 如果一个cell调用其它cell,被调用的cell的vssx,vddx,vssb,vddb如果没有和外层cell连起来,要打上PIN,否则通不过diva检查.尽量在布局低层cell时就连起来。48 在匹配电路的mos管左右画上dummy,用poly,poly的尺寸与管子尺寸一样,dummy与相邻的第一个poly gate的间距等于poly gate之间的间距。8 更改cell时查看路径,一定要在正确的library下更改,以防copy过来的cell是在其他的library下,被改错。

weixin_44606964的博客 909

在Intellij IDEA中使用Debug

Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。所以学习下如何在Intellij IDEA中使用好Debug,主要包括如下内容:Debug开篇基本用法&快捷键变量查看计算表达式智能步入断点条件设置多线程调试回退断点中断Debug...

KHOST的博客 6640

Uniapp-APP后台保活插件(安卓后台保活)

Uniapp-APP后台保活插件(安卓后台保活)亲测有效!

weixin_57844432的博客 1万+

行列式详解:从定义到应用

本文系统介绍了行列式的核心概念和应用。首先从二阶、三阶行列式入手,逐步扩展到n阶行列式的定义,讲解了余子式和代数余子式的概念。其次,详细阐述了行列式的重要性质,包括转置不变性、行列交换变号等基本性质以及乘积性质等推论。在计算方法方面,介绍了按行展开法、化上三角矩阵法等实用技巧,并列举了特殊行列式的计算案例。最后重点讨论了行列式在克拉默法则、矩阵可逆性判断、几何体积计算及线性相关性判断等领域的应用。文章强调理解行列式的几何意义和灵活运用性质的重要性,并给出了学习建议和常见误区提示。行列式作为连接代数与几何的桥

aichitang2024的博客 3033

如何使用IntelliJ IDEA进行远程调试服务

远程调试是开发过程中非常有用的功能,允许你将本地IDE连接到远程运行的服务进行调试。

z17826856787的博客 1674

深度学习环境搭建以及DeepLabCut安装过程

文章目录 一、查询电脑硬件 安装GeForce驱动程序 二、环境搭建与软件安装 1.安装CUDA运算平台软件 2.安装cuDNN支持包 3.配置环境变量 三、 DeepLabCut环境配置 1.安装Anaconda 2.创建容器环境 3.激活容器环境 4.安装TensorFlow 5.验证TensorFlow是否安装成功 6...

m0_51136557的博客 3155

IDEA快捷键使用技巧整理

IDEA快捷键使用技巧整理 IDEA快捷键及包含的IDEA使用技巧不晓得哪位好心人整理的,若知晓源出,请告知。 当然如果你仅用IDEA来写HTML/CSS也很方便,因为IDEA编辑器默认集成的zenconding简写方式帮助你快速的进入页面重构工作,所有的这些仅需按下Tab完成。 常用的IDEA快捷键使用技巧整理如下: 1、写代码时用Alt-In

JAVA_Maven的专栏 994

PointNet/PointNet++模型调参实战:如何用PyTorch让你的点云分割精度再涨5个点?

本文深入探讨了PointNet/PointNet++模型在点云分割中的调参技巧,通过PyTorch实现精度提升5个点的实战方法。重点分析了点云密度自适应策略、感受野与细节保留的平衡,以及训练加速与稳定性技巧,适用于电力巡检、自动驾驶等场景的激光点云数据处理。

weixin_30836759的博客 476

STM32F4驱动ES8388音频芯片的I²S时钟与DMA流设计

I²S(Inter-IC Sound)是一种广泛应用于嵌入式音频系统的同步串行总线协议,其核心在于精确的时钟同步与稳定的数据流传输。理解I²S时钟树结构(含MCLK、SCLK、WS生成逻辑)和分频机制,是保障CD级音质(如44.1kHz/16bit)的基础;而DMA双缓冲技术则解决了实时音频播放中数据供给连续性的关键工程问题。在STM32F4等Cortex-M4平台中,需协同配置PLLI2S锁相环、I²S预分频寄存器(I2SxPR)及DMA循环模式,同时兼顾ES8388等Codec芯片的I²C初始化时序与寄

weixin_35390379的博客 244

IDEA使用技巧

点击[ALT]+[1] or [2] or [7] 等可以跳到对应的小工具,再按[ESC]则跳回到代码编辑框中   1.1无处不在的跳转 1、项目之间的跳转 跳到下一个项目:[CTRL] + [ALT] + []] 跳到上一个项目:[CTRL] + [ALT] + [[] 2、文件之间的跳转   找到最近浏览的文件:[C...

玖贰柒的博客 304

【用unity实现100个游戏之19】制作一个3D传送门游戏,实现类似鬼打墙,迷宫,镜子,任意门效果(附项目源码)

本文介绍了Unity中实现传送门效果的完整流程。通过第一人称角色控制器实现移动,使用PortalView脚本和自定义Unlit Shader渲染门内场景,巧妙利用相机位置和旋转同步实现动态视角。重点解决了近裁剪面问题,确保远距离渲染正确性。最后通过PortalTeleporter脚本实现传送功能,检测碰撞并计算相对位置进行瞬移。该方法无需复杂插件,代码简洁高效,适用于各类3D场景中的传送门实现。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 1万+

工具 | 编码效率翻倍的 Intellij IDEA 使用技巧

可以使你编码效率翻倍的 Intellij IDEA 使用技巧

雜言非語 934

YOLOv11改进 | 检测头篇 | 利用AFPN辅助YOLOv11检测头进行特征融合识别(全网独家创新)

本文给大家带来的最新改进机制是利用AFPN(渐近特征金字塔网络)来优化检测头,AFPN的核心思想是通过引入一种渐近的特征融合策略,将底层、高层和顶层的特征逐渐整合到目标检测过程中。这种渐近融合方式有助于减小不同层次特征之间的语义差距,提高特征融合效果,使得检测模型能更好地适应不同层次的语义信息。本文在AFPN的结构基础上,为了适配YOLOv11改进AFPN结构,同时将AFPN融合到YOLOv11中(因为AFPN需要四个检测头,我们只有三个,下一篇文章我会出YOLOv11适配AFPN增加小目标检测头)

Snu77的博客 3747

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

IDEA的使用技巧

B站视频:Intellij IDEA

weixin_44226752的博客 1224

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

IntelliJ IDEA 五个高级技巧

转载自:IntelliJ IDEA 五个高级技巧! 5 个日常工作以及阅读源码必备的 IntelliJ IDEA 高级调试技巧,分分钟要起飞的节奏 01Stream Trace 自从 Java 8 开始,作为程序员的我们都离不开 Stream 相关功能的使用,书写起来那叫一个流畅(这个 feel~~)。但总是有一些时候,我们对 stream 的操作所要的结果和预期不符,这就需要我们逐步调试,定位问题。 常规调试 先来看下面这段代码: publicstaticvoidmain(St...

快速成长 425

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Intellij IDEA 2017 debug断点调试技巧与总结详解篇

更多使用详细介绍 转载自:https://blog.youkuaiyun.com/qq_27093465/article/details/64124330   在调试代码的时候,你的项目得debug模式启动,也就是点那个绿色的甲虫启动服务器,然后,就可以在代码里面断点调试啦。 下面不要在意,这个快捷键具体是啥,因为,这个keymap是可以自己配置的,有的人keymap是mac版的,有的是Windows版...

白面小生的博客 1285

IntelliJ IDEA神器使用技巧——慕课网——学习笔记

IntelliJ IDEA神器使用技巧——慕课网——学习笔记IntelliJ IDEA神器使用技巧1 IDEA下载安装2 高效定位代码2.1 无处不在的跳转2.2 精准搜索3 代码小助手们3.1 列操作3.2 live template3.3 postfix3.4 alter + enter4 编写高质量代码4.1 重构4.2 抽取5 寻找修改轨迹5.1 git的集成5.2 local histo...

江南土豆的博客 666

IDEA快捷键及使用技巧

听说IDEA是最好的java编译器,从IDE转到IDEA,啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊阿!!!!炸了,怎么这么难用,我刚刚建的工程哪去了,怎么快捷键一个也没反应.... 接下来使用下面的命令去一步一步征服她! IntelliJ IDEA使用技巧: 1、写代码时用Alt-Insert(Code|Generate…)可以创建类里面任何字段的getter与sett

chou_out_man的博客 564

IDEA使用小技巧

点击[ALT]+[1] or [2] or [7] 等可以跳到对应的小工具,再按[ESC]则跳回到代码编辑框中   1.1无处不在的跳转 1、项目之间的跳转 跳到下一个项目:[CTRL] + [ALT] + []] 跳到上一个项目:[CTRL] + [ALT] + [[] 2、文件之间的跳转   找到最近浏览的文件:[CTRL] + [E] 找到最近编辑的文件:[...

笑容刺眼 3169

IDEA Mac 快捷键

智能提示 ⌘ -> command ⇧ -> shift ⌥ -> option ⬆ -> 上箭头 ⬇ -> 下箭头 ⌃ -> Control 编辑 快捷键 说明 ⌘ + F 在当前窗口查找 ⌘ + ⇧ + F 在全工程查找 ⌘ + ⇧ + ⌥ + N 查找类中的方法或变量 F3 / ⇧ + F3 移动到搜索结...

由入门到精通 8679

IDEA快捷键+使用小技巧

一 常用快捷键 Alt+回车 导入包,自动修正,当引入的类需要异常捕获的时候 Ctrl+Shift+Space 自动补全代码,“new”字符,还可以引入强制转换的 Ctrl-Alt-Space可以自动导import类名或接口名提示,以及new后面的提示 Ctrl+N 查找类 Ctrl+Shift+N 查找文件 Ctrl+Shift+Alt+N 查找类中的方法或变量 Ctrl...

114

IDEA-常用的快捷键

因为觉得网络上的 idea 快捷键不够详尽,所以特别编写了此篇文章,方便大家使用 idea O(∩_∩)O~ 其中的英文说明来自于 idea 的官网资料,中文说明主要来自于自己的领会和理解,英文说明只是作为参考。重要的快捷键会附带图示,进行详细的说明。 每一部分会先列出所有的快捷键说明表,如果有不清楚的地方,再看后续的图示详解。 1 编辑【Editing】 快捷键 英文说明 中文...

越努力越幸运的博客 1635
上一篇: 程序员如何学习开源项目
下一篇: docker拉取镜像失败
迷失的小鹿
博客等级 码龄8年 1万+粉丝 199原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值