#IntelliJ IDEA

上一篇,通过一篇国外大佬的IDEA性能测试,得处一个结论:内存分配越多,执行效果就越好。但是,除了IDEA之外,许多其他应用程序也需要消耗内存。所以,大家的目标应该是在提高性能和内存消耗之间找到一个平衡。 马上就有读者问了,那么IDEA的内存怎么设置呢? 设置方法很简单,只需要从菜单中找到:Help 这里有两个菜单项是本篇重点: 设置最大内存Chanage Memory Setting,这是一个可视化的配置菜单项,用来设置IDEA的最大内存 而该菜单本质其实还是往下面这个Edit Custom VM Options功能的配置文件中写其中一个参数而已。 配置虚拟机参数Edit Custom VM Options,这个配置就比较通用了,用来配置IDEA运行的虚拟机各项细节参数: 都是Java开发者,相信对这些参数也不会陌生了吧。 这里那么参数中,其实影响最大的还是如上一篇...

早上给大家介绍了IDEA官方宣布正在开发一套全新的UI,但目前是预览版需要申请才能体验。 随后马上就有网友分享了,不需要申请直接就能激活体验的方法。 本期视频:https://www.bilibili.com/video/BV165411X7u7 只需要下面几步: 下载最新的IDEA版本(DD尝试了2022.1版本,后面的版本应该都会包含,之前的版本不确定) 下载地址:https://www.jetbrains.com/zh-cn/idea/nextversion/ shift键连续按两次,搜索registry: 找到ide.experimental.ui选项,勾选上 重启IDE,成功切换! 最后DD又折腾了一下主题,这下舒坦了!欢迎关注我的公众号:程序猿DD,后面继续分享下配置! 另外,给大家提一下,我最近把博客重新增加了板块,正在维护几个有意思的长...

5月23日,JetBrains发布了一篇博文,透露他们正在实现一套全新的界面界面。 他们认为目前行业中的用户界面趋势已经发生了演变,很多新用户认为JetBrains IDE的界面过于笨重,而且过时。所以,团队做出了大胆的决定,将以全新的眼光来重新设计IntelliJ IDEA和相关IDE的外观和感觉。 而这次重新设计的核心目标就是降低视觉复杂性,提供对基本功能的轻松访问,并根据需要逐步展开复杂的功能,这就是目前JetBrains团队认为的干净、现代和强大的外观和感觉。 根据官博中的描述,新UI中的主要变更包括以下四个方面: 简化主工具栏:使用新VCS、Project以及Run小部件 新的工具窗口布局 新的浅色和深色主题 全新的图标 文章开头给出的预览对于这一核心设计理念的初步体现还是很明显,整体界面相比目前的IDEA是要简洁、干净很多的,那么根据需要逐步展开的强大功能会怎么...

什么是Stream操作Stream操作是Java 8推出的一大亮点,它与java.io包里的InputStream和OutputStream是完全不同的概念。Java 8中的Stream是对容器对象功能的增强,它专注于对容器对象进行各种非常便利、高效的 聚合操作(aggregate operation),或者大批量数据操作 (bulk data operation)。Stream API借助于同样新出现的Lambda表达式,极大的提高编程效率和程序可读性。 同时,它提供串行和并行两种模式进行汇聚操作,并发模式能够充分利用多核处理器的优势,使用fork/join并行方式来拆分任务和加速处理过程。通常,编写并行代码很难而且容易出错, 但使用Stream API无需编写一行多线程的代码,就可以很方便地写出高性能的并发程序。所以说,Java8中首次出现的java.util.stream是一个...

上一篇关于调试操作回退的介绍中,我们采用了Reset Frame(Drop Frame)来实现。但该操作有一定的局限性,所以,这篇我们将介绍一个插件来帮助弥补Reset Frame做不到的一些回退操作。 视频演示:点击这里查看 插件:Jump To Line这个插件可以帮助我们在调试的时候,向前或向后跳到想要执行的语句处。这里就包括了Reset Frame无法回退的位置,比如下面这个小片段: 更详细的操作演示可以点击这里查看视频 如果您学习过程中如遇困难?可以加入我们超高质量的技术交流群,参与交流与讨论,更好的学习与进步!另外,不要走开,这是我在持续更新的玩转IDEA专栏,电子书形式的沉浸式阅读体验,赶紧加入收藏夹吧!

今天一大早,群里(点击加群)有小伙伴问了这样的一个问题: 在我们使用IDEA开发项目的时候,通常都会有很多配置项需要去设置,比如对于Java项目来说,一般就包含:JDK配置、Maven配置等。那么如果想要设置一个默认的项目配置的话,要如何做呢? 先来找到入口,在File菜单中找到New Projects Setup菜单项,细节如下图所示: 这里的几个功能都是用来配置新建项目时要做的一些默认选项。 #新建项目的基础默认配置通过Preferences for New Projects...可以配置新建项目的基础默认配置,包括外观、编辑器、版本控制、构建、执行、部署等一系列的基础内容: 这里也包括群友(点击加群)问的,如何设置默认Maven版本的配置,就可以在这里通过搜索Maven来找到配置的地方: #新建项目的运行模版第二个菜单项Run Configuration Templat...

昨天群里(点击加群)有小伙伴问,换了M1芯片的Macbook Pro之后,IDEA就一直很卡的。正好前段时间,我也换了最新的MacBook Pro,也碰到了类似的问题。 这里就简单讲一下换到M1平台后,使用IDEA要注意的两个点: IDEA版本的选择第一个要注意的点是IDEA版本要注意下, 不要选择默认的Intel版本。 JDK版本的选择在下载JDK的时候,一定要选择arrch64的JDK

抛异常相信大家都会吧?只需要这样就可以了: throw new RuntimeException("didispace.com"); 但是,在开发过程中有一些情况,我们需要测试程序对异常的处理逻辑是否正确,这个时候就需要我们在程序运行时主动的抛出异常才会触发相关逻辑来验证正确性,比较常见的场景有:事务是否会回滚、Web层的统一异常处理等等。 这个时候,你是如何去制造异常,来支持你的调试呢? 下面我就以前写的Spring Boot教程里一个事务处理的例子为场景,给大家看看一些常见的调试操作以及今天要讲的更优雅的操作。 案例说明先介绍下场景,这是一个用Spring Data JPA实现的数据库操作案例,右侧UserService里一个事务操作,里面含有5句User表的插入语句。 因为@Transactional注解存在,所以saveSomeUsers函数下的数据插入要么都成功,要么都失...

大家在Debug程序的时候,是否遇到过因为“下一步”按太快,而导致跳过了想要深入分析的那段代码?是不是很想要有“回到上一步”这样的操作呢? 在IDEA中就提供了一个帮助你回退代码的机会,但这个方法并不是万能的。好了,下面就来具体说说这个功能的使用! 使用Reset Frame回退操作不知道你在Debug的时候,是否有注意过下图标出的按钮Reset Frame,这就是今天要介绍的主角。 什么情况不能回退比如:下面这样的顺序结构,是无法会退的: void test() { int a = 1; int b = 2; int c = a + b; System.out.println(c);} 什么情况可以回退再来看看下面这种情况: void test2() { int a = 1; int b = 2; int c...

作为一名开发者,相信大部分人都喜欢用Markdown来写文章和写文档。 如果你经常用开源项目或者自己维护开源项目,肯定对于项目下的README文件也相当熟悉了吧,通常我们会在这里介绍项目的功能、如何使用等内容。 对于一些需要用命令执行的开源项目的话,也会附上一些命令行的操作提示。 这样我们就可以一边看文档,一边敲命令来安装和使用这个开源项目,当然你也可以选择复制命令去终端执行。 但是,你知道吗?在IDEA的Markdown编辑器中还有简单的方式! 你注意过这个小绿色箭头不? 其实我们只需要直接点击他,命令就可以直接执行了! Get这个技能了吗?视频分享地址:https://www.bilibili.com/video/BV1244y137hb ,欢迎点赞、关注、分享,三连支持! 如果您学习过程中如遇困难?可以加入我们超高质量的技术交流群,参与交流与讨论,更好的学习与进步!另外,不要...

昨天分享了一个在IDEA中使用Jump To Line插件实现跳转到任意行的的小技巧。 很不幸,发布没多久,就“翻车”了!不过这次翻车并不尴尬,反而还挺开心,因为DD也Get到新技能了! 到底哪里翻车了呢?看看下面这个留言: 这位小伙伴提示,点击行号试试,于是DD就试了一下,果然是可以的! 于是,DD就果断卸载了昨天分享的Jump To Line插件,真的非常感谢这位朋友的分享。同时,借这次的分享“翻车”事件,再跟大家聊聊知识分享这个事情。 我认为分享不光是对自己知识的总结,也是与读者的交流,你可以通过这个过程进一步让自己提升。所以,我还是鼓励大家多做一些分享,不论是在技术社区,还是在公司内部,在有过思考的前提下,多发表自己的观点,不要害怕错误,害怕被喷,没有人是万能的,每个人都有自己知识盲区,每个人都需要持续不断的学习。 这里我顺手也把过程录下来了,感兴趣的小伙伴也可以看看:ht...

昨天分享了一个在IDEA中为Debug断点添加条件的小技巧。今天继续分享一个Debug过程中非常实用的小插件。 Jump To Line插件名字叫Jump To Line: 安装完成之后,你在Debug过程中,会在断点的左边出现一个黄色的小尖头。 你可以通过拖动这个黄色小尖头,直接将程序执行到某一行代码的位置,实现拖到哪儿执行到哪儿的效果,具体效果如下: 视频演示:https://www.bilibili.com/video/BV1Br4y1p7UB 今天的分享就到这里,如果这个小技巧对你有用,那就帮忙点赞、在看、分享、关注,四连支持一下吧! 如果您学习过程中如遇困难?可以加入我们超高质量的技术交流群,参与交流与讨论,更好的学习与进步!另外,不要走开,这是我在持续更新的玩转IDEA专栏,电子书形式的沉浸式阅读体验,赶紧加入收藏夹吧!

近日,IDEA 2022.1的Beta 2版本发布了!下面我们一起来看看对于我们Java开发者来说,有哪些重要的更新内容。 Java增强随着Java 18的正式发布,IDEA也在该版本中迅速跟进。目前已经支持的功能包括: @snippet标记 为了简化在API文档中包含示例源代码,在JDK 18中引入了用于JavaDoc的标准Doclet的@Snipket标记。所以,在这个版本中,就可以像下面这样在注释中添加一些示例代码了。 switch增强 在JDK 17中引入的Switch表达式模式匹配规范这次也已经更新,在该版本的IntelliJ IDEA已支持这两种基本更新。 其他更新 在JDK18中,默认字符集直接就是UTF-8,而不是根据平台的不同而有不同的默认字符集。 非静态内部类不会捕获未使用的this,所以将不会再触发警告 JUnit 5增强添加了对JUnit 5.7中引...

今天给大家分享一个IDEA调试过程中的一个小技巧。 先来说说场景,你有没有碰到类似的情况,一个循环结构里,中间某一个情况可能会出错。比如下面的代码结果中,可能执行到第27次的时候,会出现问题。 for(int i = 0; i < 100; i++) { // 业务逻辑 System.out.println(i);} 那么这个时候,你会怎么调试的呢?是不是像下面这样加个断点 然后狂点绿色小箭头,到将来出错的那一次? 其实IDEA中有个功能,可以给断点增加条件,这样就不用那么麻烦了。 操作也很简单,只需要右键已经添加的断点小红点,此时会弹出一个表单,里面有condition这一项,具体如下图: 这里就可以输入你希望这个断点生效的条件,比如我这里输入了i == 27,那么当这个循环执行到i等于27的时候,程序就会停下。 这样,你就不需要靠疯狂的...

TJ君今天在和同事聊天,期间说起小孩子的教育,说现在的教育方式都是以鼓励为主,要不停的告诉小孩子正能量告诉他们是最棒的才能更好地激发他们的学习热情。 想想TJ君小时候的残酷生活,现在小孩子真是生活在幸福里的花朵。 不过话说回来,是不是希望自己在编码的时候也有人一直在鼓励你呢?嘿嘿,正所谓千穿万穿马屁不穿,那么TJ君今天介绍的这个好东东你就一定不能错过了。 TJ君今天给大家介绍的是一款程序员鼓励插件,可以在你编码的时候不停的语音鼓励你,让你事半功倍。 插件的雏形最早是一款vscode的插件,不过有大神jadepeng写了一个IDEA版本的,让我们这些使用idea的小伙伴也可以享受。 下载安装后,在插件设置界面,可以将voice package type属性设置为builtin,这样可以选择内置语音包,也可以将voice package type属性设置为custom,这样子就可以使用...