热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

IntellijIDEA超实用小技巧「含插件主题分享」

前言虽然已经使用IDEA很长时间了,但是对于这个强大的工具也只是用到了一些基础功能,所以特地整理出IntellijIDEA软件的一些实用小技巧。希望看

image-20210114201725172


前言

虽然已经使用 IDEA 很长时间了,但是对于这个强大的工具也只是用到了一些基础功能,所以特地整理出 Intellij IDEA 软件的一些实用小技巧。希望看完这篇文章可以让大家更高效的学习生活。


本文所有截图和测试均基于 macOS 2020.1 版本 Intellj IDEA



配置

官方说明地址:https://www.jetbrains.com/help/idea/discover-intellij-idea.html

由于文档没有官方中文版本,建议英文不好的朋友可以使用谷歌翻译。

PS:阅读前先切换到对应快捷键版本

image-20210114213455488

接下来就介绍几款我个人觉得相当实用的配置


  1. 自动导入包
    Preferences -> Editor -> General -> Auto Import
    在粘贴时自动导入包(insert imports on paste),图中是选择的 All 也就是默认插入,一般建议还是选择 Ask 自行确认是否导入包。
    image-20210114213028912
  2. 多行显示
    Preferences -> Editor -> General -> Editor Tabs
    可以自由调节 Tab 数目,是否自动换行。建议屏幕大的可以不勾选,选择自动换行,并调大 Tab limit 参数,保留更多的文件。
    image-20210115092450536
    下面是换行的效果图image-20210115092931976
  3. 行号显示
    Preferences -> Editor -> General -> Appearance
    这个配置强烈推荐打开,因为正常报错都会提示对应的行数,日常查找错误的时候一目了然。
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Tbpqxb3U-1611057073810)(Intellij IDEA 超实用小技巧.assets/image-20210115093041534.png)]效果图image-20210115093243023
    当然不打开也可以通过 command + L 快速跳转到指定行 「windows:ctrl + G
    image-20210115093502114
  4. 代码模版配置
    Preferences -> Editor -> Live Templates
    可以根据自己日常需求配置相关模版,这里我就分别对类和方法设置了自定义注释
    image-20210118192148259
    上面给出我的类注释配置内容,因为使用了 time 和 date 变量所以还需要点击 Edit variables 绑定 name 和表达式。
    image-20210118192525786
    配置完模版后,我们只需要正常输入 /c 就会提示 classInfo 选中回车就可以直接添加设置好的模版注释
    image-20210118192715396

必备快捷键

日常高频的快捷键用 🌟 标记出来,方便大家阅读


查询


介绍快捷键
项目中检索文本 🌟command + Shift + F
快速搜索「ALL」shift + shift
查找 class 🌟command + N
查找目录command + shift + N 输入 /
symbol 查找「模糊查找」command + option + O

编译运行


介绍快捷键
编译command + F9
编译选择的文件、包、模块🌟command + shift + F9
Debug 调试control + D

调试


介绍快捷键图标
下一行「不进入方法体内」 🌟F8image-20210118174821301
下一行「进入方法体内」F7image-20210118165829980
跳出Shift + F8image-20210118174706525
运行到光标处,如果光标前有其他断点会进入到该断点Option + F9image-20210118175621017
计算表达式 🌟Option + F8image-20210118180017291

实用操作


介绍快捷键
跳转指定行command + L
退回/前进到上一个操作位置 🌟command + option + 左/右
跳转到方法/变量定义处 🌟command + B
将选中代码提取方法 🌟command + option + M
折叠当前代码块command + -
展开当前代码块command + +
折叠全部代码command + shift + +

DEBUG


  1. 断点设置条件:右键断点,在 Condition 中输入判断条件,代码会自动匹配停在 50 的时候,非常适合在循环的场景中使用 image-20210118194401944
  2. 返回上一步:复杂业务调试时,手一抖错过断点,再也不需要从头开始了,直接点击 Drop Frame 退回到上一步。image-20210119145359691实例中,当调用到 doubleNum 方法后点击 Drop Frame 按钮就直接退回到 i = 100 位置处。image-20210119145707359
  3. 多线程调试:多线程运行时由于运行顺序无法控制,所以调试比较困难,所以选择具体线程断点,具体操作步骤与「1断点设置条件」类似,只不过这次 Suspend 选项不再是默认的 All 而是选择 Thread image-20210119150739374设置完成后就可以在断点处顺利停下来了,除此之外还可以自己手动切换线程。image-20210119152026814
  4. 强制返回结果/抛出异常image-20210119174756251
  5. 远程调试:-Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=9228 启动应用时需要在 - jar前加上这段参数就可以了。本质上来说就是开启端口,和调试端建立 socket 远程通讯。image-20210119174404051 具体调试的时候只需要正常的调试即可,当然测试用的 URL 请求地址还是远程的。

其他


bookmark

快速上手业务逻辑的神器,对于核心模块的代码都可以通过书签标记,方便需要时快速定位。F3 标记书签,再次 F3 取消书签。


本地历史版本

程序员的老毛病,手抖不小心覆盖了本地代码,ctrl + z 撤销失效的时候就可以试试版本地历史版本还原代码了。选中文件右键 local history -> show history 就可以看到之前编辑的历史版本内容,选择需要的版本还原即可。

image-20210118193611072


禅模式

View -> Apperence -> Enter Zen Mode 禅模式下可以排除所有多余的干扰,相对的日常需要的其他功能也都会被隐藏,当然快捷键还是可以呼出窗口,所以这个模式还是相当考验快捷键熟练度的,当然这个模式下颜值非常能打,我称之为装杯模式。


image-20210118211900661

Inject language

日常在 String 对象中编辑 JSON 时经常会遇到转义字符,导致修改内容相当困难,这个时候就可以使用 Inject language 来编辑 JSON


  1. 光标选择在引号内
  2. option + enter
  3. 选择 inject language or reference 直接按 enter 输入 JSON
  4. 再次 option + enter
  5. 选择 Edit JSON Fragment 就可以打开没有转移字符的编辑窗口

image-20210118215000468

实用插件


插件的安装

如果没有网络问题建议 Preferences -> Plugins -> MarketPlace 直接搜索,如果查询不到也可以在网站搜索中 https://plugins.jetbrains.com/idea 最终的效果相同。


主题分享

由于我日常几乎都是使用黑色主题,所以就只推荐黑色主题了,毕竟没有使用没有发言权,如果有需要亮色主题的可以使用 Material Theme UI 这款插件试试


  • Dark Purple Theme 🌟 🌟 🌟 🌟
  • Gradianto 🌟 🌟 🌟
  • One Dark theme 🌟 🌟 🌟

插件推荐

最后就是推荐一些我日常使用频率比较高,也很实用的插件了。


插件名用途
Alibaba Java Coding Guidelines阿里 Java 规范检查插件
lomboklombok 插件
Rainbow brackets彩虹括号,对应的括号显示相同颜色
Material Theme UI主题图标切换
Free Mybatis pluginMybatis 从代码跳转到 Mapper
leetcode editor上班摸鱼刷算法
.ignoregit 提交过滤文件
GsonFormat根据 JSON 生成 Java 类

推荐阅读
author-avatar
jason---zhu
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有