IDEA使用教程 安装教程

16. Codota 插件

Codota 插件可以根据使用频率优先显示较常用的类和方法。然而,是否使用该插件取决于个人的偏好。有时工具只能作为参考,仍然需要依靠个人记忆来确保准确性。

17. 快速查看类和字段的注释

按下 F2 键可以快速查看某个类或字段的文档注释。这是一个非常有用的小技巧。不仅在 IntelliJ IDEA 中可以实现这个功能,其他 IDE 通常也可以快速查看文档注释内容。这也是为什么阿里编码规范中明确要求实体类字段要使用文档注释而不是双斜杠 // 注释的原因。我记得刚开始看到这个规范时也很困惑,特意去百度搜索,有人说这只是个习惯问题,显然这并不令人信服。直到发现可以通过按下 F2 快速查看文档注释后,我恍然大悟!

18. 括号颜色区分

使用 "Rainbow Brackets" 插件可以使成对的括号使用不同的颜色进行区分。

19. 将不同的微服务项目添加到同一个启动窗口

按照以下步骤可以将不同的微服务项目添加到同一个启动窗口:

  1. 打开 "View" 菜单。

  2. 选择 "Tool Windows"。

  3. 选择 "Services"。

  4. 点击 "Add Services"。

20. IntelliJ IDEA 全局设置(打开新窗口的设置)

例如,当我们打开新窗口时,Maven 配置会恢复,这时需要修改打开新窗口的设置以达到全局的效果。在较低版本的 IntelliJ IDEA 中,全局设置可以在 "File" 菜单下找到,例如在 IntelliJ IDEA 2018 中,可以在 "Other Settings" 中进行设置。

21. Java Mapper 层代码文件和 Mapper.xml 文件相互跳转

使用 "Free MyBatis" 插件可以实现 Mapper 层代码文件和 Mapper.xml 文件之间的相互跳转。只需点击绿色箭头,即可快速跳转,非常方便。

22. 设置 IntelliJ IDEA 背景图片

使用 "BackgroundImage" 插件可以设置喜欢的图片作为 IntelliJ IDEA 的背景图,让编辑环境更加个性化。

23. Maven Tree(查看 Maven Jar 包依赖关系、解决依赖冲突)

当使用 mvn dependency:tree 命令查看 Maven Jar 包依赖关系时,结果通常以文本形式展示,不太方便查看。为了更好地解决依赖冲突,我们可以将输出结果复制到文本编辑器中手动搜索依赖链路。

另外,我们还可以在 IntelliJ IDEA 的右上角点击 "Show Dependencies" 按钮,以图片形式展示依赖关系。在图片中,按住 Ctrl 键并滚动鼠标滚轮可以进行放大。这对于排除依赖冲突(冲突时会标红)和查看 Jar 包来源非常有用。

如果您在 IntelliJ IDEA 中看不到 "Show Dependencies" 按钮,请点击设置菜单,并勾选相应选项以显示该按钮。

24. 快捷键切换回上一个点击开的 Tab

当我们打开了多个 Tab 时,想要快速回到上一个点击开的 Tab 可能很困难。为了解决这个问题,可以使用快捷键 Alt + ←(对应 Eclipse 快捷键,对于 IntelliJ IDEA 默认的快捷键需要自测)。如果在后面的 Tab 编辑了内容,可能需要多按几次。同样,Alt + → 可以切换到下一个点击开的 Tab。这个快捷键的常见应用场景包括在 Debug 时发生类跳转,以及在其他类中使用快捷键创建方法。

即使两个 Tab 不相邻,也可以使用该快捷键切换回去。

25. IntelliJ IDEA 自带的 SSH 连接工具

IntelliJ IDEA 自带了一个 SSH 连接工具,可以方便地进行 SSH 连接操作。类似的,IntelliJ IDEA 还有自带的数据库连接工具,但是视图界面不如 Navicat 等专业工具,所以很多人选择使用专业工具。

使用 IntelliJ IDEA 自带的 SSH 连接工具的步骤如下:

  1. 配置账号和密码。

  2. 开启 SSH 会话。

26. 代码调用链路图插件

使用 "SequenceDiagram" 插件可以生成代码的调用链路图。这是对第13点的上位替代方案。IntelliJ IDEA 自带的快捷键可以查看代码调用,但以菜单形式展示,不够直观。如果是自己写的代码或者是规范的代码,使用自带的功能就足够了。但如果是复杂的源码或者不规范的代码,使用 "SequenceDiagram" 插件会更加直观。

在要查看的 Java 文件上右键点击,选择 "Sequence Diagram",即可生成相应的调用链路图。

效果示例:

[示例图片]

27. 获取当前线程的 Dump

在断点调试的时候,可以通过点击调试工具栏中的相机图标来获取当前线程的 Dump 信息。这个功能可以通过线程名来分析当前是哪个线程在执行,对于多线程环境下的代码运行分析很有帮助。

例如,当使用 run() 方法执行时,可以看到是通过 main 主线程执行的。这只是方法调用,并没有启动新的线程。当我们将 run() 方法改成 start() 方法时,可以看到是 thread0 线程执行的。

28. IntelliJ IDEA 同一项目不同端口多开

这是一个非常实用的功能,可以用于模拟集群测试负载均衡。在开发阶段,如果需要让别人直接连接自己的本地进行测试,也非常方便。如果想要在调试时打断点,又不影响其他人,那么多开的功能就发挥作用了。

有一种方法是勾选 "Allow parallel run"(不同版本的 IntelliJ IDEA 名称可能不一样),但在某些情况下,会同时在相同的端口上启动多个实例,可能是版本或操作问题。这里介绍另一种有效的方法:在 VM options 中添加 -Dserver.port=8993,其中 8993 是与 application.yml 配置中的 port 不同的另一个端口,以实现不同端口的多开效果。

29. 给代码添加书签

可以给代码添加书签,以便快速定位和访问特定的代码块。右键点击代码区域,选择 "Add Bookmark" 即可完成书签添加。

可以在左下角的 "Favorites" 中找到 "Bookmarks",右键点击书签可以进行重命名。

看到这里,大家应该明白书签的一个使用场景就是源码阅读。

30. 单词翻译插件

使用 "Translation" 插件可以进行单词翻译。在插件市场中搜索 "translation" 并下载安目前默认的是谷歌引擎(不知道后续作者会不会改) ,但是谷歌翻译已经在大陆停用了 所以我们要手动设置一下, 设置路径为Tools - Translation - 翻译引擎

使用方法: 选中我们需要翻译的单词,鼠标右键 选中Translate

效果如图:

31. 查看字节码

当需要深入分析问题并查看字节码层面时,这通常意味着面对一些 Java 中的复杂问题。例如,在之前提到的博客中,涉及到将函数(function)转换为 String 格式的问题,只有通过查看字节码才能理解其原理,源代码是无法直接得知的。

在 IntelliJ IDEA 中,我们可以通过以下步骤来查看字节码:选择一个 Java 类,然后依次点击 "View" --> "Show Bytecode"(适用于 IntelliJ IDEA 2021.1 及更高版本)。请注意,对于较旧的 IntelliJ IDEA 版本,可能没有此功能。但是,无论如何,我会尽力帮助您。

32. Maven Helper 插件解决依赖冲突

在第23点中,提到了使用 "mvn dependency:tree" 命令来分析 Maven 依赖冲突。然而,后来发现 Maven Helper 插件也能很好地解决这个问题,而且它似乎更加方便易用(虽然我个人更倾向于使用 "mvn dependency:tree")。

首先,我们需要安装 Maven Helper 插件。然后,打开项目的 pom.xml 文件,在底部会出现一个名为 "Dependency Analyzer" 的选项。点击它。

在点击后,我们会看到列出了存在冲突的依赖包。

让我们以 commons-logging 依赖为例进行分析。点击 commons-logging,在右侧会列出引入了 commons-logging 的这些依赖项。

现在,我们只需右键单击右侧依赖项位置,即可查看冲突的版本信息。

IDEA安装教程

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/35884.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

从JDK源码级别剖析JVM类加载机制

1 什么是Java虚拟机 一个可执行java字节码的虚拟机进程;跨平台的是java程序,而不是java虚拟机,java虚拟机在各个操作系统是不兼容的,例如windows、linux、mac都需要安装各自版本的虚拟机,java虚拟机通过jdk实现功能。…

【跟小嘉学 Rust 编程】四、理解 Rust 的所有权概念

系列文章目录 【跟小嘉学 Rust 编程】一、Rust 编程基础 【跟小嘉学 Rust 编程】二、Rust 包管理工具使用 【跟小嘉学 Rust 编程】三、Rust 的基本程序概念 【跟小嘉学 Rust 编程】四、理解 Rust 的所有权概念 文章目录 系列文章目录前言一、所有权(Ownership)1.1.、所有权(Ow…

【MySQL】不就是子查询

前言 今天我们来学习多表查询的下一个模块——子查询,子查询包括了标量子查询、列子查询、行子查询、表子查询,话不多说我们开始学习。 目录 前言 目录 一、子查询 1. 子查询的概念 2. 子查询语法格式 2.1 根据子查询结果不同可以分为:…

flutter聊天界面-Text富文本表情emoji、url、号码展示

flutter聊天界面-Text富文本表情emoji、url、号码展示 Text富文本表情emoji展示,主要通过实现Text.rich展示文本、emoji、自定义表情、URL等 一、Text及TextSpan Text用于显示简单样式文本 TextSpan它代表文本的一个“片段”,不同“片段”可按照不同的…

Matlab画等构造图

clc;clear;close all; data xlsread(TOPBRENT等T0构造.xlsx); x data(:,1) xmax max(x); xmin min(x); y data(:,2) ymax max(y); ymin min(y); z data(:,3); N 45; …

IDEA使用插件绘制UML类图+PlantUML语法讲解

安装 IDEA安装插件 安装完插件记得重启一下IDEA 安装Graphviz(亲测win11可以使用) 安装完插件之后,还需要安装Graphviz才可以渲染图形。 Graphviz安装包下载地址 安装过程很简单,直接双击或者管理员身份运行即可,注…

Docker中部署Redis集群与部署微服务项目的详细过程

目录 一、使用Docker部署的好处二、Docker 与 Kubernetes 对比三、Redis集群部署实战四、Spring Boot项目 打包镜像?小结 一、使用Docker部署的好处 Docker的好处在于:在不同实例上运行相同的容器 Docker的五大优点: 持续部署与测试、多云服务平台支…

微信小程序开发与应用——字体样式设置

要求:设置字体样式。 1、打开微信开发者工具,创建一个小程序,如下: 2、设置小程序的项目名称和路径,并选择开发语言为JavaScript,如下: 3、小程序的主体部分由三个文件组成,且都要…

VS2019+Qt5.15 在线显示百度地图

1.Qt5.15编译程序需要选择mscv2019 Release版本 2.需要到百度地图开发平台注册并获取到开发者key 3.显示地图是JS与Qt的交互过程&#xff0c;显示地图的html文件&#xff1a; <!DOCTYPE html> <html><head> <meta name"viewport" content&q…

基于ubuntu的驱动开发

一般的linux驱动开发都是基于交叉编译来进行的&#xff0c;本文尝试着从另一个角度&#xff1a;基于ubuntu的本地驱动开发来学习一下驱动的开发 一、驱动的开发与编译 1.1、编写驱动文件 #include <linux/init.h> #include <linux/module.h> static int hello_i…

深入理解Linux网络——内核是如何接收到网络包的

文章目录 一、相关实际问题二、数据是如何从网卡到协议栈的1、Linux网络收包总览2、Linux启动1&#xff09;创建ksotfirqd内核线程2&#xff09;网络子系统初始化3&#xff09;协议栈注册4&#xff09;网卡驱动初始化5&#xff09;网卡启动 3、迎接数据的到来1&#xff09;硬中…

Gradio库中的Model3D模块:实时上传和展示3D模型

❤️觉得内容不错的话&#xff0c;欢迎点赞收藏加关注&#x1f60a;&#x1f60a;&#x1f60a;&#xff0c;后续会继续输入更多优质内容❤️ &#x1f449;有问题欢迎大家加关注私戳或者评论&#xff08;包括但不限于NLP算法相关&#xff0c;linux学习相关&#xff0c;读研读博…

结合具体场景举例说明chatgpt预训练模型中Tokenization的原理

假设我们有一个场景&#xff0c;Alice想向Chatbot询问一部电影的推荐。她发送了一条消息&#xff1a;“你好&#xff0c;能给我推荐一部好看的电影吗&#xff1f;” 在这个场景中&#xff0c;Chatbot使用了ChatGPT预训练模型。首先&#xff0c;Chatbot需要对Alice的消息进行Tok…

OpenCV读取一张8位无符号三通道图像并显示

#include <iostream> #include <opencv2/imgcodecs.hpp> #include <opencv2/opencv.hpp> #include

c++编写网络爬虫

c爬虫项目 实现图形化界面UI 安装easyX&#xff08;需要用的graphisc.h&#xff09; 我之前的文章详细写到过如何安装。是这篇文章提到的&#xff1a;传送门 easyx官网 创建图形化界面 #define WINDOW_WIDTH 482 #define WINDOW_HEIGHT 300 void initUI() {initgraph(WINDO…

SwiftUI的优缺点

2019年WWDC大会上&#xff0c;苹果在压轴环节向大众宣布了基于Swift语言构建的全新UI框架——SwiftUI&#xff0c;开发者可通过它快速为所有的Apple平台创建美观、动态的应用程序。推荐大量使用struct代替类。 SwiftUI 就是⼀种声明式的构建界面的用户接口工具包。 SwiftUI使用…

机器学习与深度学习——自定义函数进行线性回归模型

机器学习与深度学习——自定义函数进行线性回归模型 目的与要求 1、通过自定义函数进行线性回归模型对boston数据集前两个维度的数据进行模型训练并画出SSE和Epoch曲线图&#xff0c;画出真实值和预测值的散点图&#xff0c;最后进行二维和三维度可视化展示数据区域。 2、通过…

SpringBoot + Vue前后端分离项目实战 || 五:用户管理功能后续

系列文章&#xff1a; SpringBoot Vue前后端分离项目实战 || 一&#xff1a;Vue前端设计 SpringBoot Vue前后端分离项目实战 || 二&#xff1a;Spring Boot后端与数据库连接 SpringBoot Vue前后端分离项目实战 || 三&#xff1a;Spring Boot后端与Vue前端连接 SpringBoot V…

企业内部安全:利用 ADAudit Plus 管理与加强安全审计

在现代数字化时代&#xff0c;企业面临着日益复杂和不断变化的安全威胁。为了保护敏感数据、遵守合规要求以及防范内部威胁&#xff0c;企业需要有效的安全审计解决方案。ADAudit Plus 是一款强大而全面的安全审计工具&#xff0c;可以帮助企业管理和加强内部安全。 ADAudit Pl…

Jenkins持续集成,在Linux中安装最新版Jenkins(详细)

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 去年从6月28日发布…