资讯专栏INFORMATION COLUMN

IntelliJ IDEA 18 周岁,吐血推进珍藏已久的必装插件

赵春朋 / 841人阅读

摘要:代码规约扫描插件以今年年初发布的阿里巴巴开发规约为标准,作为的插件形式存在,检测代码中存在不规范得位置然后给予提示。

IntelliJ IDEA是目前最好最强最智能的Java IDE,前几天,他刚刚年满18岁。

本文,给大家推荐几款我私藏已久的,自己经常使用的,可以提升代码效率的插件。

IDEA插件简介

常见的IDEA插件主要有如下几类:

常用工具支持

Java日常开发需要接触到很多常用的工具,为了便于使用,很多工具也有IDEA插件供开发使用,其中大部分已经在IDEA中默认集成了。例如maven、git、svn、tomcat、jetty、jrebel、Gradle等。

功能增强

还有些插件提供了一些IDE中不具有的功能,比如静态代码扫描、代码自动生成等。

框架集成

集成框架主要是为了提供框架定制的代码和配置的生成,以及快速的访问框架提供的功能。例如集成Spring框架,Mybatis框架等。

UI定制化及优化

UI定制化相关的插件主要提供一下个性化需求定制,例如修改编辑区的背景图片插件、修改代码颜色等。

其他编程语言支持

IDEA主要支持Java,为了使用其他语言,可以使用一些支持其他语言的插件,通过这些插件可以实现语法分析,配色主题,代码格式化和提示等功能。例如Go语言的支持的插件。

个人或者公司特殊需求

公司内部插件

我的插件一览

这里简单介绍一些笔者日常开发中使用到的插件。 以下是我的IDEA中自己安装的插件列表。这些插件都是我经过很长时间的使用之后最终保留下来的,都是值得安装的一些插件。其中被我打码的就是公司内部插件。

IDEA插件安装

IDEA的插件安装非常简单,对于很多插件来说,只要你知道插件的名字就可以在IDEA里面直接安装。

Preferences--->Plugins--->查找所需插件--->Install

或者

Preferences--->Plugins--->Install plug from disk --->选择下载好的插件安装

安装之后重启IDEA即可生效

IDEA插件仓库

IntelliJ IDEA激发了许多Java开发人员编写插件, IntelliJ IDEA Plugins(https://plugins.jetbrains.com... )中目前包含3000+个插件并且还在不断增长。

基本功能

作者目前使用的IntelliJ IDEA版本是专业版2018.2.4(Ultimate Edition)

很多插件中提供的功能在这个版本中都已经集成进来了,这里简单说几个可能比较常用的,这几种功能就无需加装插件了。

背景图片

目前,IDEA支持设置背景图片。这对于广大程序员来说无疑是个好功能。整日对着枯燥的代码实在是会让人疲乏。要是可以设置一张美女图片的话。。。

设置方法

Ctrl+Shift+A(或者help -> find action)调用弹窗后输入Set Background Image

在里面设定要设置为Image的图片,透明度调到15左右,保存即可。

效果如下

内置terminal

目前IntelliJ IDEA已经有一个内置的terminal工具,可以方便的使用shell命令。

内置support

目前很多新版本的IntelliJ IDEA中,已经内置了很多support插件,比如我们常用的markdown support 、UML support 以及 android support等。

PS:由于作者使用的是专业版,不知道社区版是否也会内置这些插件,如果没有内置的话,读者可以根据需要自行下载相关插件并安装。

有了markdowm support插件以后,就可以直接预览md语法的内容了。

必备插件 Maven Helper

目前,Java开发很多都在使用maven进行项目管理和自动构建。

日常开发中,可能经常会遇到jar包冲突等问题,就需要通过查看maven依赖树来查查看依赖情况。这种方式不是很高效,这里推荐一个插件,安装之后,直接打开pom文件,即可查看依赖数,还能自动分析是否存在jar包冲突。

一旦安装了Maven Helper插件,只要打开pom文件,就可以打开该pom文件的Dependency Analyzer视图(在文件打开之后,文件下面会多出这样一个tab)。

进入Dependency Analyzer视图之后有三个查看选项,分别是Conflicts(冲突)、All Dependencies as List(列表形式查看所有依赖)、All Dependencies as Tree(树结构查看所有依赖)。并且这个页面还支持搜索。

FindBugs-IDEA

FindBugs很多人都并不陌生,Eclipse中有插件可以帮助查找代码中隐藏的bug,IDEA中也有这款插件。

使用方法很简单,就是可以对多种级别的内容进行finbugs

分析完之后会有一个视图进行提示,详细的说明是哪种问题。

 按照提示解决完问题之后再执行findbug查看情况即可。

阿里巴巴代码规约检测

2017年10月14日杭州云栖大会,Java代码规约扫描插件全球首发仪式正式启动,规范正式以插件形式公开走向业界,引领Java语言的规范之路。

Java代码规约扫描插件以今年年初发布的《阿里巴巴Java开发规约》为标准,作为Eclipse、IDEA的插件形式存在,检测JAVA代码中存在不规范得位置然后给予提示。规约插件是采用kotlin语言开发的,感兴趣的同学可以去开看插件源码。

阿里巴巴规约插件包含三个子菜单:编码规约扫描、关闭试试检测功能。

并且,该插件支持在编写代码的同时进行提示,

这款插件,真的可以很大程度上提升代码质量,一定要安装。

GsonFormat

Java开发中,经常有把json格式的内容转成Object的需求,比如项目开始时,合作方给你提供了一个json格式request/response,这时候你就需要将其定义成一个Java类,GsonFormat这款插件可以实现该功能。

Lombok plugin

在Java中,我们经常会定义很多JavaBean,这些Bean需要有getter、setter、toString、equals和hashCode等方法。

通常情况下,我们可以使用IDEA的快捷键生成这些代码,但是自动生成的代码后,如果bean中的属性一旦有修改,需要重新生成,给代码维护增加了一定的负担。

有一款很好的插件,可以帮助开发者节省这部分工作。那就是Lombok。

只要在IDEA中安装了该插件,只需要在JavaBean中添加一行注解代码,插件就会自动帮我们生成getter、setter、toString、equals和hashCode等方法。

当然,这些方法不止在IDE中的代码调用中需要用到,在真正线上部署的时候也需要有,所以,还需要使用maven引入一个lombok的包。


      org.projectlombok
      lombok
      1.16.10


/**
 * @author Hollis
 */
public class HollisLab {

    public static void main(String[] args) {
        Wechat wechat = new Wechat();
        wechat.setId("Hollis");
        wechat.setDesc("每日更新Java技术文章");
        System.out.println(wechat);
    }
}

@Data
class Wechat {
    private String id;
    private String desc;
}

输出结果:

Wechat(id=Hollis, desc=每日更新Java技术文章)

我们在Wechat类上面添加了@Data注解,插件就自动帮我们添加了getter/setter和toString方法。

String Manipulation

字符串日常开发中经常用到的,但是不同的字符串类型在不同的地方可能有一些不同的规则,比如类名要用驼峰形式、常量需要全部大写等,有时候还需要进行编码解码等。这里推荐一款强大的字符串转换工具——String Manipulation。

它强大到什么程度,看下他的功能列表你就知道了:

文本转换操作

切换样式(camelCase, hyphen-lowercase, HYPHEN-UPPERCASE, snake_case, SCREAMING_SNAKE_CASE, dot.case, words lowercase, Words Capitalized, PascalCase)

转换为SCREAMING_SNAKE_CASE (或转换为camelCase)

转换为 snake_case (或转换为camelCase)

转换为dot.case (或转换为camelCase)

转换为hyphen-case (或转换为camelCase)

转换为hyphen-case (或转换为snake_case)

转换为camelCase (或转换为Words)

转换为camelCase (或转换为lowercase words)

转换为PascalCase (或转换为camelCase)

选定文本大写

样式反转

Un/Escape

Un/Escape 选中的 java 文本

Un/Escape 选中的 javascript 文本

Un/Escape 选中的 HTML 文本

Un/Escape 选中的 XML 文本

Un/Escape 选中的 SQL 文本

Un/Escape 选中的 PHP 文本

将 diacritics(accents) 转换为 ASCII

将非ASCII 转换为转义的Unicode

将转义的Unicode转换为字符串

Encode/Decode

Encode 选中的文本为 MD5 Hex16

De/Encode 选中的文本为 URL

De/Encode 选中的文本为 Base64

递增/递减

递增/递减所有找到的数字

复制行并且递增/递减所有找到的数字

创建序列:保持第一个数字,递增替换所有其他数字

递增重复的数字

按自然顺序排序

按行倒序

按行随机排序

区分大小写A-z排序

区分大小写z-A排序

不区分大小写A-Z排序

不区分大小写Z-A排序

按行长度排序

通过子选择行排序:每行仅处理一个选择/插入符号

对齐

通过选定的分隔将选定的文本格式化为列/表格

将文本对齐为左/中/右

过滤/删除/移除

grep选定的文本,所有行不匹配输入文字将被删除。 (不能在列模式下工作)

移除选定的文本

移除选定文本中的所有空格

删除选定文本中的所有空格

删除重复的行

只保留重复的行

删除空行

删除所有换行符

其他

交换字符/选择/线/标记

切换文件路径分隔符:Windows < - > UNIX

安装好插件后,选中需要处理的内容后,按快捷键Alt+m,即可弹出工具功能列表。

很好很强大的一款字符串处理工具。

.ignore

目前很多开发都在使用git做版本控制工具,但是有些时候有些代码我们是不想提到到我们的代码仓库中的,比如ide自动生成的一些配置文件,或者是我们打包生成的一些jar文件等,这时候就需要编写一个.ignore文件,来排除那些不想被版本管理的文件。

这里推荐一个好用的插件.ignore,他可以帮我们方便的生成各种ignore文件。

安装插件后,选中项目,右键新建的时候,会多出一个.ignore文件的选项,可以通过这个选项创建ignore文件。

在弹出的对话框中,可以自动帮我们生成一份.ignore文件,这里我们让其帮忙自动排除所有和idea有关的文件。

Mybatis plugin

目前ORM框架中,Mybatis非常受欢迎。但是,同时给很多开发带来困扰的就是Mybatis需要很多xml的配置文件,有的时候很难去进行修改。

这里推荐一款神器,可以让你像编辑java代码一样编辑mybatis的文件。

Intellij Idea Mybatis插件主要功能:

提供Mapper接口与配置文件中对应SQL的导航

编辑XML文件时自动补全

根据Mapper接口, 使用快捷键生成xml文件及SQL标签

ResultMap中的property支持自动补全,支持级联(属性A.属性B.属性C)

快捷键生成@Param注解

XML中编辑SQL时, 括号自动补全

XML中编辑SQL时, 支持参数自动补全(基于@Param注解识别参数)

自动检查Mapper XML文件中ID冲突

自动检查Mapper XML文件中错误的属性值

支持Find Usage

支持重构从命名

支持别名

自动生成ResultMap属性

 (图源:https://www.oschina.net/p/int...)

但是这款插件是收费的,但是不影响他确实是一个很实用,可以很大程度上提升开发效率的插件。读者可以考虑使用Free Mybatis plugin(这款插件我没用过,具体是否好用有待考证)。

Key promoter X

对于很多刚刚开始使用IDEA的开发者来说,最苦恼的就是不知道快捷键操作是什么。

使用IDEA,如果所有操作都使用鼠标,那么说明你还不是一个合格的程序员。

这里推荐一款可以进行快捷键提示的插件Key promoter X。

Key Promoter X 是一个提示插件,当你在IDEA里面使用鼠标的时候,如果这个鼠标操作是能够用快捷键替代的,那么Key Promoter X会弹出一个提示框,告知你这个鼠标操作可以用什么快捷键替代。

当我使用鼠标查看一个方法都被哪些类使用的时候,就会提示:

记住这个快捷键以后,就可以使用快捷键代替鼠标啦。

AceJump

前面介绍了一款可以通过使用快捷键来代替鼠标操作的插件,这里再介绍一款可以彻底摆脱鼠标的插件,即AceJump

AceJump允许您快速将光标导航到编辑器中可见的任何位置,只需点击“ctrl +;”,然后输入一个你想要跳转到的字符,之后键入匹配的字符就跳转到你想要挑战的地方了。

如以上代码,我想在这个类中,跳转到println那个位置,只需要按下快捷键:“ctrl +;”,然后输入println,即可定位到目标位置。

上图中,我输入了pri三个字母后,页面提示三个可选项,分别用字母G、H、D标注,这时候只需要按下对应字母,即可快速定位到指定位置,是不是很方便。

activate-power-mode

最后,介绍一款程序员很好的在妹子面前装X的插件——activate-power-mode 。

安装了这款插件之后,你写代码的时候,就会附加一些狂拽炫酷屌炸天的效果:

总结

本文一共介绍了11款可以提升程序员开发效率、提升代码质量、提升编码心情的软件。欢迎大家安装尝试一下。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/73122.html

相关文章

  • Java核心技术教程整理,长期更新

    以下是Java技术栈微信公众号发布的关于 Java 的技术干货,从以下几个方面汇总。 Java 基础篇 Java 集合篇 Java 多线程篇 Java JVM篇 Java 进阶篇 Java 新特性篇 Java 工具篇 Java 书籍篇 Java基础篇 8张图带你轻松温习 Java 知识 Java父类强制转换子类原则 一张图搞清楚 Java 异常机制 通用唯一标识码UUID的介绍及使用 字符串...

    Anchorer 评论0 收藏0
  • 前端资源系列(3)-微信小程序开发资源汇总

    摘要:微信小程序应用号开发资源汇总文档工具教程代码插件组件文档从搭建一个微信小程序开始小程序开发文档小程序设计指南工具小程序开发者工具官方支持微信小程序实时预览的支持的微信小程序组件化开发框架转在线工具小程序云端增强社区微信小程序 微信(小程序or应用号)开发资源汇总-文档-工具-教程-代码-插件-组件 文档 从搭建一个微信小程序开始 小程序开发文档 小程序设计指南 工具 小程序开发者...

    paney129 评论0 收藏0
  • Java人员正确使用 IntelliJ IDEA的方式

    摘要:原本地址人员正确使用的方式博客地址前言博主是开发人员,以前一直都用来开发的,说实话感觉毫无美感可言,后来经过同事介绍,认识了,一眼就相中了黑色的主题风格,自此就抛弃了旧爱。下文我将介绍一下正确的使用的方式。 showImg(https://segmentfault.com/img/remote/1460000009255931?w=640&h=400); 原本地址:Java人员正确使用...

    赵连江 评论0 收藏0
  • sublime text3配置<python篇>

    摘要:选中一个后,按此快捷键可以同时选中另一个,同时多了另一个光标在下面新开一行在上面新开一行删除整行。向左单位性地移动光标,快速移动光标。开启关闭侧边栏。插件能为提供括号,引号这类高亮功能。用来安装其官网上的所有主题。 古语有云,工欲善其事必先利其器。选择一个好的工具,往往事半功倍。因为个人电脑原因,用 pycharm 太卡,所以想起了 sublime text,配置了一下,觉得挺好用。 ...

    陈江龙 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<