IntelliJ IDEA 2023 年下载、安装教程、好用插件推荐
文章目录
- 下载与安装IDEA
- 常用插件推荐
- Alibaba Java Coding Guidelines(阿里巴巴Java开发规约)
- Key Promoter X(IDEA快捷键提示)
- Translation(翻译插件)
- Save Actions(优化保存插件)
- Codota AI Autocomplete(代码自动提示和推荐)
- Auto filling Java call arguments(自动填充调用方法参数)
- GenerateAllSetter(自动生成调用对象的set方法)
- GenerateO2O(自动生成对象之前的传输方法)
- SequenceDiagram(方法调的深度,生产时序图)
- Maven Helper(Maven依赖分析工具)
- Javadoc(Javadoc生成插件)
- Easy Javadoc(Javadoc生成插件)
- Free MyBatis plugin(MyBatis插件)
- SonarLint(Snoar代码质量插件)
- Squaretest(自动生成单元测试)
- FindBugs-IDEA(代码质量扫描检查工具)
- CheckStyle-IDEA(编码风格扫描检查工具)
- 推荐阅读
下载与安装IDEA
原文地址
首先先到官网下载最新版的IntelliJ IDEA, 下载后傻瓜式安装就好了
官网下载地址:https://www.jetbrains.com/
1、下载完后在本地找到该文件,双击运行 idea 安装程序

2、点击 Next

3、选择安装路径,Next

4、按需求选择,点击 Next

5、默认,不用改,直接点 Install,安装

6、安装完成后,点击 Finish,也可勾选Run Intellij IDEA 再点击 Finish,会自动打开安装好的 IDEA

常用插件推荐
Alibaba Java Coding Guidelines(阿里巴巴Java开发规约)

推荐理由:阿里巴巴Java开发规范配套插件(p3c),现已成为Java工程师必备工具,无需多言。
推荐等级:★★★★★
插件地址:https://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines
Key Promoter X(IDEA快捷键提示)

推荐理由:当你在IDEA里面使用鼠标的时候,如果这个鼠标操作是能够用快捷键替代的,那么Key Promoter X会弹出一个提示框,告知你这个鼠标操作可以用什么快捷键替代。对于想完全使用快捷键在IDEA的,这个插件就很有用。
推荐等级:★★★★★
插件地址:https://plugins.jetbrains.com/plugin/9792-key-promoter-x
Translation(翻译插件)

推荐理由:多引擎多语言的翻译插件,支持谷歌、百度、有道、阿里翻译。
推荐等级:★★★★★
插件地址:https://plugins.jetbrains.com/plugin/8579-translation
Save Actions(优化保存插件)

推荐理由:Save Actions是IDEA一款格式自动化的插件,当程序员将代码保存后,插件会自动进行格式化,代码洁癖者的福音。
推荐等级:★★★★★
插件地址:https://plugins.jetbrains.com/plugin/7642-save-actions
Codota AI Autocomplete(代码自动提示和推荐)

推荐理由:基于AI技术,通过对大量开源的项目学习,帮助开发者提供更可靠的智能代码提示和推荐,写代码仿佛飞一般的感觉。
推荐等级:★★★★★
插件地址:https://plugins.jetbrains.com/plugin/7638-codota-ai-autocomplete-for-java-and-javascript
Auto filling Java call arguments(自动填充调用方法参数)

推荐理由:在调用函数时,通过alt+enter键,触发联想功能,选择”auto fill call parameters”自动填充调用的函数的形参名。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/8638-auto-filling-java-call-arguments
GenerateAllSetter(自动生成调用对象的set方法)

推荐理由:该插件作用是可以快速针对已有的model实体对象的属性生产set代码,免去开发者在开发过程中set属性值时还需要去实体对象中翻查的时间,生成的同时会附带类型默认值。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/9360-generateallsetter
GenerateO2O(自动生成对象之前的传输方法)

推荐理由:GenerateO2O插件可以用来生成转换对象的方法。属性名字相同的可以直接转换,不用不停的写get、set方法做转换。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/7171-generateo2o
SequenceDiagram(方法调的深度,生产时序图)

推荐理由:SequenceDiagram能够根据方法的调用关系,自动生成执行时序图,方便了解代码的调用关系。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/8286-sequencediagram
Maven Helper(Maven依赖分析工具)

推荐理由:该插件可以查看maven的依赖树,分析版本冲突,并提供maven常用命令模板。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/7179-maven-helper
Javadoc(Javadoc生成插件)

推荐理由:该插件可以在java类元素(如字段、方法等)上生成javadoc的插件。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/7157-javadoc
Easy Javadoc(Javadoc生成插件)

推荐理由:该插件能帮助java开发者自动生成javadoc文档注释,支持的IDEA版本为 2018.1 及以上。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/12977-easy-javadoc
Free MyBatis plugin(MyBatis插件)

推荐理由:该插件是一款增强IDEA对MyBatis支持的插件,主要功能包括:生成mapper xml文件、快速从代码跳转到mapper及从mapper返回代码、mybatis自动补全及语法错误提示和集成mybatis generator gui界面等。
推荐等级:★★★★
插件地址:https://plugins.jetbrains.com/plugin/8321-free-mybatis-plugin
SonarLint(Snoar代码质量插件)

推荐理由:Snoar代码质量扫描工具,扫描规则和Sonarqube一致。
推荐等级:★★★
插件地址:https://plugins.jetbrains.com/plugin/7973-sonarlint
Squaretest(自动生成单元测试)

推荐理由:Squaretest是一款自动生成单元测试的插件,包括mock测试(30天试用期)。
推荐等级:★★★
插件地址:https://plugins.jetbrains.com/plugin/10405-squaretest
FindBugs-IDEA(代码质量扫描检查工具)

推荐理由:FindBugs是一款非常老牌的Java代码质量扫描插件,在P3C和Sonar面世之前代码质量基本就靠它了,还放在这里主要出于对曾经的王者给予一些respect。
推荐等级:★★
插件地址:https://plugins.jetbrains.com/plugin/3847-findbugs-idea
CheckStyle-IDEA(编码风格扫描检查工具)

推荐理由:CheckStyle也是一款老牌的Java编码风格检查插件,不过现在有了P3C和Sonar之后也基本不用了,可作为补充检查工具使用,更方便于定制化一些检查项。
推荐等级:★★
插件地址:https://plugins.jetbrains.com/plugin/1065-checkstyle-idea
推荐阅读
IDEA 授权教程
Pycharm 中文乱码解决,统一设置 UTF-8,再也不会乱码了
相关文章:
IntelliJ IDEA 2023 年下载、安装教程、好用插件推荐
文章目录 下载与安装IDEA常用插件推荐Alibaba Java Coding Guidelines(阿里巴巴Java开发规约)Key Promoter X(IDEA快捷键提示)Translation(翻译插件)Save Actions(优化保存插件)Codo…...
下载HTMLTestRunner并修改
目录 一. 下载HTMLTestRunner 二. 修改HTMLTestRunner 1. 修改内容 2. 修改原因 一. 下载HTMLTestRunner 下载报告模板地址:http://tungwaiyip.info/software/HTMLTestRunner.html 下载模块: 二. 修改HTMLTestRunner 将修改后的模块放到python安装目录下的..…...
C#回调函数学习1
回调函数(Callback Function)是一种函数指针,它指向的是由用户自己定义的回调函数。我们将这个回调函数的指针作为参数传递给另外一个函数,在这个函数工作完成后,它将通过这个回调函数的指针来回调通知调用者处理结果。…...
leetcode 232 用栈实现队列
请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(push、pop、peek、empty): 实现 MyQueue 类: void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头…...
element UI表单验证,自定义验证规则
validator 可以为指定字段自定义验证函数——这就相当于把前边配置的东西用js按照以前的方式编写验证逻辑了。虽然麻烦点,但是能实现比较复杂的业务逻辑判断。 <el-form-itemlabel"中奖概率"prop"rate":rules"[{ required: true, mes…...
redis 主存复制
1. 前言 Redis的持久化机制,它很好的解决了单台Redis服务器由于意外情况导致Redis服务器进程退出或者Redis服务器宕机而造成的数据丢失问题。 在一定程度上保证了数据的安全性,即便是服务器宕机的情况下,也可以保证数据的丢失非常少。 通常…...
Unity Shader顶点数据疑问
1)Unity Shader顶点数据疑问 2)Unity 2018发布在iOS 16.3偶尔出现画面不动的问题 3)安卓游戏启动后提示“应用程序异常” 这是第352篇UWA技术知识分享的推送,精选了UWA社区的热门话题,涵盖了UWA问答、社区帖子等技术知…...
java写一个用于生成雪花id的工具类
我们创建一个类 叫 SnowflakeIdGenerator 作为生成雪花id的工具类 然后 编写代码如下 public class SnowflakeIdGenerator {private static final long START_TIMESTAMP 1609459200000L; // 设置起始时间戳,可以根据需要进行调整private static final long WORKER…...
淘宝开店装修教程 (2023新版)
一、下载千牛 1. 浏览器打开淘宝 https://www.taobao.com/ 2. 进入 - 千牛卖家中心 3. 进入 - 关于千牛 4. 下载千牛 5. 下载页面 6. 下载安装桌面 二、登录千牛 1. 登录页面 2. 进入 - 千牛工作台 三、pc店铺装修 1. 进入 - pc店铺 2. 进入 - 装修页面 3. 删除没用的模块 从…...
Python傅立叶变换
1. 什么是傅里叶变换? 在数学中,变换技术用于将函数映射到与其原始函数空间不同的函数空间。傅里叶变换时也是一种变换技术,它可以将函数从时域空间转换到频域空间。例如以音频波为例,傅里叶变换可以根据其音符的音量和频率来表示…...
MATLAB向量化编程基础精讲教程
向量化编程是MATLAB中一种重要的编程技术,通过使用向量和矩阵运算代替循环,可以提高代码的执行效率和可读性。本文将介绍MATLAB向量化编程的基础知识,并提供多个案例代码,帮助读者理解和应用向量化编程。 一、向量化编程基础知识…...
【非对称加密算法】RSA算法
一、非对称加密算法 非对称加密算法使用了两个不同的密钥:公钥和私钥。公钥是公开的,可以被任何人使用,而私钥是只有特定的人能够使用的。这种算法的加密和解密过程使用不同的密钥,因此称为非对称加密算法。 在非对称加密算法中…...
【滑动窗口】438. 找到字符串中所有字母异位词
438. 找到字符串中所有字母异位词 滑动窗口解法 创建两个Map 一个记录实际需要的有效字符 另一个记录窗口内的有效字符个数初始化need每次遍历一个字符 判断是不是有效字符 如果是 更新window 另外判断window中有效字符的个数是不是等于need中有效字符的个数 如果是更新valid…...
【PowerQuery】Excel 一分钟以内刷新PowerQuery数据
当需要进行刷新的周期如果小于一分钟,采用数据自动刷新就无法实现自动刷新的目标。那就没有办法了吗?当然不是,这里就是使用VBA来实现自动刷新。这里实现VBA刷新的第一步就是将当前的Excel 保存为带有宏的Excel 文件,如果不带宏则无法运行带有宏代码的Excel文件,保存过程如…...
【C语言】用冒泡排序实现my_qsort
大家好,我是苏貝,本篇博客带大家了解如何用冒泡排序实现my_qsort,如果你觉得我写的还不错的话,可以给我一个赞👍吗,感谢❤️ 目录 一. 前言二. 冒泡排序三. 4个参数3.1 第一个参数void* base3.2 第二个参数…...
【css】深入理解flex属性
参考文章: 深入理解Flex属性 flex弹性布局教程-05-项目属性flex-shrink flex:flex-grow flex-shrink flex-basis flex:0 1 0 如何计算flex布局,有flex-shrink和flex-grow的情况下,每个元素的大小 flex-grow生效公式如…...
前端项目开发流程
一 参加需求对称(评审)会议 时间:在产品设计完成以后,进入正式的开发流程之前 组织者:产品&项目经理 目的:统一大家对产品的认识,及时发现产品设计缺陷,尽可能降低后续修改需求的频率 参与者ÿ…...
MybatisPlus逆向工程入门指南:让你的开发更高效、更简洁、更优雅
学会了,可以看看这篇文章:更新中~ 正向工程:先创建Java实体类,由框架负责根据实体类生成数据库表。Hibernate是支持正向工程的。 逆向工程:先创建数据库表,由框架负责根据数据库表,反向生成如下…...
通用商城项目(下)
记录一些踩坑的地方,以及理顺一些思路。 通过管理系统页面,完成商品属性分组和商品属性(基本属性)关联维护 属性表 与 属性组表 的功能完善:显示属性组与属性表的一对多关系 前端 1. 引入组件,是否显示使…...
k8s集群使用ingress转发grafana服务
文章目录 前言一、思路二、grafana准备1. grafana-configmap.yaml2. grafana.yaml 三、ingress准备1. ingress.yaml2. grafana-externalname.yaml3. ingress-nginx-controller 四、 本机host文件准备五、访问测试 前言 在k8s集群中,使用ingress服务转发grafana的页…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
在HarmonyOS ArkTS ArkUI-X 5.0及以上版本中,手势开发全攻略:
在 HarmonyOS 应用开发中,手势交互是连接用户与设备的核心纽带。ArkTS 框架提供了丰富的手势处理能力,既支持点击、长按、拖拽等基础单一手势的精细控制,也能通过多种绑定策略解决父子组件的手势竞争问题。本文将结合官方开发文档,…...
如何将联系人从 iPhone 转移到 Android
从 iPhone 换到 Android 手机时,你可能需要保留重要的数据,例如通讯录。好在,将通讯录从 iPhone 转移到 Android 手机非常简单,你可以从本文中学习 6 种可靠的方法,确保随时保持连接,不错过任何信息。 第 1…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
ArcGIS Pro制作水平横向图例+多级标注
今天介绍下载ArcGIS Pro中如何设置水平横向图例。 之前我们介绍了ArcGIS的横向图例制作:ArcGIS横向、多列图例、顺序重排、符号居中、批量更改图例符号等等(ArcGIS出图图例8大技巧),那这次我们看看ArcGIS Pro如何更加快捷的操作。…...
AI病理诊断七剑下天山,医疗未来触手可及
一、病理诊断困局:刀尖上的医学艺术 1.1 金标准背后的隐痛 病理诊断被誉为"诊断的诊断",医生需通过显微镜观察组织切片,在细胞迷宫中捕捉癌变信号。某省病理质控报告显示,基层医院误诊率达12%-15%,专家会诊…...
在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...
力扣热题100 k个一组反转链表题解
题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...
Vue ③-生命周期 || 脚手架
生命周期 思考:什么时候可以发送初始化渲染请求?(越早越好) 什么时候可以开始操作dom?(至少dom得渲染出来) Vue生命周期: 一个Vue实例从 创建 到 销毁 的整个过程。 生命周期四个…...
数学建模-滑翔伞伞翼面积的设计,运动状态计算和优化 !
我们考虑滑翔伞的伞翼面积设计问题以及运动状态描述。滑翔伞的性能主要取决于伞翼面积、气动特性以及飞行员的重量。我们的目标是建立数学模型来描述滑翔伞的运动状态,并优化伞翼面积的设计。 一、问题分析 滑翔伞在飞行过程中受到重力、升力和阻力的作用。升力和阻力与伞翼面…...
