「硬核干货」总结IDEA开发的26个常用设置

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

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

以下所有常见配置的思维导图,内容丰富,思维导图配合 Ctrl+F 搜索食用风味儿更佳。
先赞后看,养成习惯
IDEA 软件设置Settings页面
Settings是对软件本身的一些属性进行配置,例如字体 主题 背景图 插件等。
如何打开Settings设置页面

Settings设置页面结构详解

结构
- Appearance & Behavior 外观和行为
- Keymap 快捷键
- Editor 编辑器设置
- Plugins 插件
- Version Control 版本控制
- Build,Execution,Deployment 构建,执行,部署
- Languages & Frameworks 语言和框架
- 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:自动帮我们优化导入的包
设置显示行号和方法间的分隔符

效果如下

忽略大小写提示
- Ctrl + Alt + S 打开设置界面(或者从菜单File - settings 进来)
- 在搜索框输入Completion定位到Code Completion功能项
- 在右侧配置界面选中All letters
- 在右侧配置界面把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 文件中的注释显示的都不会是中文。
设置当前源文件的编码


对单独文件的编码修改还可以点击右下角的编码设置区。如果代码内容中包含中 文,则会弹出如上的操作选择。其中:
- Reload 表示使用新编码重新加载,新编码不会保存到文件中,重新打开此文 件,旧编码是什么依旧还是什么。
- Convert 表示使用新编码进行转换,新编码会保存到文件中,重新打开此文件, 新编码是什么则是什么。
- 含有中文的代码文件,Convert 之后可能会使中文变成乱码,所以在转换成请 做好备份,不然可能出现转换过程变成乱码,无法还原。
Build、Execution、Deployment
设置自动编译
其他
设置为省电模式

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

效果如下

还可以添加分屏快捷键

背景图设置
- 在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个常用设置的更多相关文章
- 硬核干货 | C++后台开发学习路线
2020秋招提前批 C/C++相关开发 拿到腾讯.华为等offer 学习路线及时间安排 推荐时间为4个月,包括四部分:语言,计算机基础知识,项目基础知识,项目实践. 语言 推荐学习1个月 学习方针:视 ...
- [IOT] 自制蓝牙工牌办公室定位系统 (一)—— 阿里物联网平台概览及打通端到云(硬核·干货)
目录:老少皆宜.超长干货文警告 1.快速入门创建产品 -- 小白,打包带走去吹牛 2.代码分析 -- 老炮,快速了解能用上 2.1 从start.sh分析开发环境如何自动构建 2.2 从sample. ...
- 校招必看硬核干货:C++怎么学才能进大厂
目录 关于小猿 如何找资料 自我定位 岗位需求 学习路线及时间安排 资料获取方式 C++语言在历史舞台上出现了不短的时间,虽然一直面临着Python,Go等新语言的挑战,但它在基础架构和大型软件上的优 ...
- MySQL硬核干货:从磁盘读取数据页到缓冲池时,免费链表有什么用?
1.数据库启动的时候,是如何初始化Buffer Pool的? 现在我们已经搞明白一件事儿了,那就是数据库的Buffer Pool到底长成个什么样,大家想必都是理解了 其实说白了,里面就是会包含很多个缓 ...
- 万字硬核干货!6大技巧,极速提升kubectl的生产力!
明晚8:30,k3s实战课程开启!将由Rancher研发总监带你畅游k3s与边缘AI的奇妙世界.课程内容完全由实际使用场景中总结而来,别错过啦~!访问以下链接即可传送到课程现场: http://z-m ...
- 5000+字硬核干货!Redis 分布式集群部署实战
原理: Redis集群采用一致性哈希槽的方式将集群中每个主节点都分配一定的哈希槽,对写入的数据进行哈希后分配到某个主节点进行存储. 集群使用公式(CRC16 key)& 16384计算键key ...
- 硬核干货:5W字17张高清图理解同步器框架AbstractQueuedSynchronizer
前提 并发编程大师Doug Lea在编写JUC(java.util.concurrent)包的时候引入了java.util.concurrent.locks.AbstractQueuedSynchro ...
- 硬核干货:4W字从源码上分析JUC线程池ThreadPoolExecutor的实现原理
前提 很早之前就打算看一次JUC线程池ThreadPoolExecutor的源码实现,由于近段时间比较忙,一直没有时间整理出源码分析的文章.之前在分析扩展线程池实现可回调的Future时候曾经提到并发 ...
- 「雕爷学编程」Arduino动手做(26)——4X4矩阵键盘模块
37款传感器与模块的提法,在网络上广泛流传,其实Arduino能够兼容的传感器模块肯定是不止37种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
随机推荐
- 《提升能力,涨薪可待》—Java并发之Synchronized
Synchronized简介 线程安全是并发编程中的至关重要的,造成线程安全问题的主要原因: 临界资源, 存在共享数据 多线程共同操作共享数据 而Java关键字synchronized,为多线程场景下 ...
- C# 图片转二进制
/// <summary> /// 将目标路径转为image /// </summary> /// <param name="path">图片路 ...
- 解决RabbitMQ远程不能访问的问题
刚刚安装的RabbitMQ-Server-3.3.5,并且也已经开启了Web管理功能,但是现在存在一个问题: 出于安全的考虑,guest这个默认的用户只能通过http://localhost:1567 ...
- java架构之路(多线程)大厂方式手写单例模式
上期回顾: 上次博客我们说了我们的volatile关键字,我们知道volatile可以保证我们变量被修改马上刷回主存,并且可以有效的防止指令重排序,思想就是加了我们的内存屏障,再后面的多线程博客里还有 ...
- php5升php7代码修改整理
1. 为什么升级至php7 a.安全需要 过早以至于不维护的php版本难免会有未修补的漏洞,安全性要求较高的行业是要及时升级的. b.性能提升(开启opcache hugepage) 据说性能提升一倍 ...
- cf - 01串的问题
One beautiful July morning a terrible thing happened in Mainframe: a mean virus Megabyte somehow got ...
- PTA - 拓扑排序
一个项目由若干个任务组成,任务之间有先后依赖顺序.项目经理需要设置一系列里程碑,在每个里程碑节点处检查任务的完成情况,并启动后续的任务.现给定一个项目中各个任务之间的关系,请你计算出这个项目的最早完工 ...
- MySql笔记(二)
目录 MySQL笔记(二) 一幅画,一次瞬间的回眸,就在那次画展上,那个眼神,温柔的流转,还是那干净的皮鞋,一尘不染,俊朗的眉宇性感的唇,悄悄走近,牵手一段浪漫 MySQL笔记(二) 13.条件查询 ...
- Java入门 - 语言基础 - 20.Stream和File和IO
原文地址:http://www.work100.net/training/java-stream-file-io.html 更多教程:光束云 - 免费课程 Stream和File和IO 序号 文内章节 ...
- 微软的github 上面 有 Docker.DotNet 嗯 作为 菜 只有欣赏的额
.NET Client for Docker Remote API step one 需要下载的 猛戳 Docker.DotNet


