前言

程序员对待IDE都是虔诚的,经常因为谁是最好的IDE而在江湖上掀起波澜,曾经我也是。

后来我遇到了IDEA,从此是它,余生都是它。

IDEA 毫无疑问是目前最强大的Java开发工具了,但是大部分的人并没有将它用到极致,很多实用的配置,插件,小技巧被忽视。就像JDK8的新特性一样,你知道它在且坚持不用,但是只要用过一次就知道什么是真滴香。

以下所有常见配置的思维导图,内容丰富,思维导图配合 Ctrl+F 搜索食用风味儿更佳
先赞后看,养成习惯

IDEA 软件设置Settings页面

Settings是对软件本身的一些属性进行配置,例如字体 主题 背景图 插件等。

如何打开Settings设置页面

Settings设置页面结构详解

结构

  1. Appearance & Behavior 外观和行为
  2. Keymap 快捷键
  3. Editor 编辑器设置
  4. Plugins 插件
  5. Version Control 版本控制
  6. Build,Execution,Deployment 构建,执行,部署
  7. Languages & Frameworks 语言和框架
  8. Tools 工具集

IDEA 常见的xx个设置

绝大部分的设置都包含效果示意图,文章结构:设置方法-->效果示意图

Appearance & Behavior 外观和行为

设置主题

目前我的IDEA中有两套主题:Darcula, IntelliJ。

  • Darcula 就是神秘的黑色主题,我偏爱黑色
  • IntelliJ 白色主题

设置菜单字体

Keymap 快捷键

设置为Eclipse快捷键的键位

如果对 Eclipse 难以忘怀可以使用其键位,这种操作我也不推荐,感觉别扭。

修改快捷键

不要一次性修改大量的快捷键

  • Add keyboard Shortcut 添加键盘快捷键 实际上就是修改当前的键位
  • Add Mouse Shortcut 增加鼠标捷径
  • Add Abbreviation
  • Remove Ctrl+Alt+Shift+S 移除改快捷键

查看快捷键的功能

通过快捷键 查找快捷键的功能,例如:你不知道 Ctrl+F什么意思 可以通过该功能进行搜索

Editor 编辑器设置

Editor 中的设置可以说是最高频使用的设置了,编辑区的字体,自动导包,注释生成等等
什么是Editor编辑器呢?就是写代码的区域

Editor-General

设置鼠标滚轮滚动修改字体大小

设置成功之后,就可以通过 Ctrl+滚轮 实现代码字体大小的调节了

设置鼠标悬浮提示

悬停提示是一个非常有用的功能,效果如下

设置自动导包

  • Add unambiguous imports on the fly:自动导入不明确的结构
  • Optimize imports on the fly:自动帮我们优化导入的包

设置显示行号和方法间的分隔符

效果如下

忽略大小写提示

  1. Ctrl + Alt + S 打开设置界面(或者从菜单File - settings 进来)
  2. 在搜索框输入Completion定位到Code Completion功能项
  3. 在右侧配置界面选中All letters
  4. 在右侧配置界面把Match case(匹配大小写)前面的√去掉,

  • IntelliJ IDEA 的代码提示和补充功能有一个特性:区分大小写。如上图标注所示,默认就是 First letter 区分大小写的。
  • 区分大小写的情况是这样的:比如我们在 Java 代码文件中输入 stringBuffer, IntelliJ IDEA 默认是不会帮我们提示或是代码补充的,但是如果我们输入 StringBuffer 就可以进行代码提示和补充。

设置取消单行显示标签页(Tabs)的操作

什么是单行显示

如何设置为多行?

效果如下

Editor-Font

修改当前主题代码编辑区的字体

默认字体、字体大小、字体行间距,都可以单独设置

Editor-Color Scheme

修改当前主题控制台输出的字体

修改代码中注释的字体颜色

Editor-Code Style

设置超过指定 import 个数,改为*

Editor-File and Code Template

修改类头的文档注释信息

效果如下

Editor – File Encodings

设置项目文件编码

Transparent native-to-ascii conversion 主要用于转换 ascii,一般都要勾选, 不然 Properties 文件中的注释显示的都不会是中文。

设置当前源文件的编码


对单独文件的编码修改还可以点击右下角的编码设置区。如果代码内容中包含中 文,则会弹出如上的操作选择。其中:

  1. Reload 表示使用新编码重新加载,新编码不会保存到文件中,重新打开此文 件,旧编码是什么依旧还是什么。
  2. Convert 表示使用新编码进行转换,新编码会保存到文件中,重新打开此文件, 新编码是什么则是什么。
  3. 含有中文的代码文件,Convert 之后可能会使中文变成乱码,所以在转换成请 做好备份,不然可能出现转换过程变成乱码,无法还原。

Build、Execution、Deployment

设置自动编译

其他

设置为省电模式

如上图所示,IntelliJ IDEA 有一种叫做 省电模式 的状态,开启这种模式之后 IntelliJ IDEA 会关掉代码检查和代码提示等功能。所以一般也可认为这是一种阅读模式,如果你在开发过程中遇到突然代码文件不能进行检查和提示,可以来看看这里是否有开启该功能。

设置代码分屏展示

效果如下

还可以添加分屏快捷键

背景图设置

  1. 在idea中 双击shift 出现搜索框 输入: Set Background Image 单击 Set Background Image

2.选择要添加的图片的路径,设置透明度,点击OK 就可以查看效果了

效果如下

IDEA 当前项目结构设置 Project Structure

项目结构配置就是关于当前模块的配置,只对当前模块生效,例如Jar包,包结构,源码文件夹,输出路径,依赖和项目构建信息。

如何打开 Project Structure 页面

Project Structure 页面结构讲解

project

image.png

Modules

可以查看每一个子模块的信息

Artifacts

IDEA带包配置,有时候用IDEA打的包有问题,部署到Tomcat中跑不起来,可以再打包一次。

Facets

当前项目配置文件的相关信息

修改IDEA默认设置

总结

以上就是我总结的IDEA开发常见的所有配置,如果本文对你有帮助,不要忘了收藏点赞支持一些。

关于IDEA的插件和一些使用技巧,请持续关注。

「硬核干货」总结IDEA开发的26个常用设置的更多相关文章

  1. 硬核干货 | C++后台开发学习路线

    2020秋招提前批 C/C++相关开发 拿到腾讯.华为等offer 学习路线及时间安排 推荐时间为4个月,包括四部分:语言,计算机基础知识,项目基础知识,项目实践. 语言 推荐学习1个月 学习方针:视 ...

  2. [IOT] 自制蓝牙工牌办公室定位系统 (一)—— 阿里物联网平台概览及打通端到云(硬核·干货)

    目录:老少皆宜.超长干货文警告 1.快速入门创建产品 -- 小白,打包带走去吹牛 2.代码分析 -- 老炮,快速了解能用上 2.1 从start.sh分析开发环境如何自动构建 2.2 从sample. ...

  3. 校招必看硬核干货:C++怎么学才能进大厂

    目录 关于小猿 如何找资料 自我定位 岗位需求 学习路线及时间安排 资料获取方式 C++语言在历史舞台上出现了不短的时间,虽然一直面临着Python,Go等新语言的挑战,但它在基础架构和大型软件上的优 ...

  4. MySQL硬核干货:从磁盘读取数据页到缓冲池时,免费链表有什么用?

    1.数据库启动的时候,是如何初始化Buffer Pool的? 现在我们已经搞明白一件事儿了,那就是数据库的Buffer Pool到底长成个什么样,大家想必都是理解了 其实说白了,里面就是会包含很多个缓 ...

  5. 万字硬核干货!6大技巧,极速提升kubectl的生产力!

    明晚8:30,k3s实战课程开启!将由Rancher研发总监带你畅游k3s与边缘AI的奇妙世界.课程内容完全由实际使用场景中总结而来,别错过啦~!访问以下链接即可传送到课程现场: http://z-m ...

  6. 5000+字硬核干货!Redis 分布式集群部署实战

    原理: Redis集群采用一致性哈希槽的方式将集群中每个主节点都分配一定的哈希槽,对写入的数据进行哈希后分配到某个主节点进行存储. 集群使用公式(CRC16 key)& 16384计算键key ...

  7. 硬核干货:5W字17张高清图理解同步器框架AbstractQueuedSynchronizer

    前提 并发编程大师Doug Lea在编写JUC(java.util.concurrent)包的时候引入了java.util.concurrent.locks.AbstractQueuedSynchro ...

  8. 硬核干货:4W字从源码上分析JUC线程池ThreadPoolExecutor的实现原理

    前提 很早之前就打算看一次JUC线程池ThreadPoolExecutor的源码实现,由于近段时间比较忙,一直没有时间整理出源码分析的文章.之前在分析扩展线程池实现可回调的Future时候曾经提到并发 ...

  9. 「雕爷学编程」Arduino动手做(26)——4X4矩阵键盘模块

    37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...

随机推荐

  1. 【原创】(十六)Linux内存管理之CMA

    背景 Read the fucking source code! --By 鲁迅 A picture is worth a thousand words. --By 高尔基 说明: Kernel版本: ...

  2. 【转载】解决KindEditor图片上传对话框位置异常问题(浏览器放大缩小时对话框不见了)

    今早在整理文件上传模块的时候,发现富文本编辑器 kindeditor 上传图片的对话框无法显示,其实对话框已经生成了,但是它没有top值,所以在页面上看不见. 捣鼓了一个多小时,代码看了一大串,没解决 ...

  3. 如何制作地图故事使用esri story maps

    博客作者原创 制作方法如下:http://url.cn/5dnsVQd

  4. 道格拉斯-普克算法(JavaScript实现)

    需求: 有时候当移动速度很慢,GPS定位的轨迹点就非常的多,这时候为了缩减数据量,需要将不突出的点去掉. 思路: (1) 在曲线首尾两点间虚连一条直线,求出其余各点到该直线的距离. (2)选其最大者与 ...

  5. 【转】ArcGIS Server 站点架构-Web Adaptor

    GIS 服务器内置了Web服务器,如果我想用我自己企业内部的服务器,该怎么做? 多个GIS服务器集群又如何做? …… 有问题,说明我们在思考,这也是我们希望看到的,因为只有不断的思考,不断的问自己为什 ...

  6. echarts圆饼图设置默认选中项并在中间显示文字

    效果: 代码: var myChart = echarts.init(document.getElementById('quanshi-echarts-two')); option = { grid: ...

  7. spring注入相关注解

    本次主要整理四个注解 @ComponentScan.@Scope.@Conditional.@Import 1. @ComponentScan(value = "com.xiaoguo&qu ...

  8. 求一个数的阶乘在 m 进制下末尾 0 的个数

    题意 : 求一个数 n 的阶层在 m 进制下末尾 0 的个数 思路分析 : 如果是 10 进制地话我们是很容易知道怎么做的,数一下其对 5 约数地个数即可,但是换成 m 进制的话就需要先将 m 分解质 ...

  9. PTA - 堆栈模拟队列

    设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列Q. 所谓用堆栈模拟队列,实际上就是通过调用堆栈的下列操作函数: int IsFull(Stack S):判断堆栈S是否已满,返回1或0: in ...

  10. .NET为什么要使用异步(async)编程?⭐⭐⭐⭐⭐

    .NET为什么要使用异步(async)编程? 有几点坐下笔记 ⭐⭐⭐⭐: 1. 同步方法 static void Main(string[] args) { Console.WriteLine($&q ...