「硬核干货」总结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种的.鉴于本人手头积累了一些传感器和模块,依照实践出真知(一定要动手做)的理念,以学习和交流为目的,这里 ...
随机推荐
- Netty快速入门(01)Linux I/O模型介绍
Netty简述 Netty是一个高性能的网络编程框架. 上面提到了几个关键的字眼,高性能,网络编程,框架.这些概括Netty的本质. Netty是一个NIO客户端服务器框架,可以快速轻松地开发协议服务 ...
- ArcGIS Server 动态图层发布调用图解
目录 1 前言 1.1 简介 1.2 适用场景 2 动态图层 2.1 共享地图服务 2.2 动态工作空间添加 2.2.1 企业级数据库 2.2.2 shapefile文件夹 2.2.3 栅格文件夹 2 ...
- [思维导图] C标准库
- python中各种文件打开模式
在python中,总的来说有三种大的模式打开文件,分别是:a, w, r 当以a模式打开时,只能写文件,而且是在文件末尾添加内容. 当以a+模式打开时,可以写文件,也可读文件,可是在读文件的时候,会发 ...
- poj 2253 最短路 or 最小生成树
Freddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fiona Frog who is sit ...
- 依赖注入之IConfiguration
public class Startup { public Startup(IConfiguration configuration) { Configuration = configuration; ...
- jav设计模之的动态代理
在学习Spring的时候,我们知道Spring主要有两大思想,一个是IoC,另一个就是AOP,对于IoC,依赖注入就不用多说了,而对于Spring的核心AOP来说,我们不但要知道怎么通过AOP来满足的 ...
- Spring Boot 事务的使用
Spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement 开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactio ...
- 归一化 (Normalization)、标准化 (Standardization)和中心化/零均值化 (Zero-centered)
博主学习的源头,感谢!https://www.jianshu.com/p/95a8f035c86c 归一化 (Normalization).标准化 (Standardization)和中心化/零均值化 ...
- Ninject 初步 -Getting Started with Ninject 精通ASP-NET-MVC-5-弗瑞曼 Listing 6-10