IDEA快速入门(Mac版)
【持续更新】一篇今年年头的老文章顺道发布了,大家有任何问题可以留言沟通。当时刚刚加入团团,愿大家有机会还是购买一台MAC,确实能给大家的效率赋能,虽然在一开始会有一些艰难!⛽️
望借着换工作的东风,好好的俊一波IDEA,之前始终习惯于Eclipse的使用。
使用事项
界面
- IntelliJ IDEA 默认界面是隐藏掉 Toolbar 和 Tool Buttons,在
View菜单中点选。注意通过Window->Save Current Layout避免每次都需要重新设置界面。 - 注意整体主题和编辑主题是分开的,代码字体和Console字体都要选择适用中文的
- IDE编码默认是UTF-8,还需要将Project Encoding设置为UTF-8,Properties中勾选
Transparent native-to-ascii conversion - 如果你的 Tomcat 控制台输出乱码,并且你已经保证了本文上面的控制台字体设置你设置的字体包含中文,那你还可以尝试下在 Tomcat 的 VM 参数上加上:
-Dfile.encoding=UTF-8
如果你是 Mac 系统,很有可能是需要的,通过工具集->字体册->添加字体添加。

- IntelliJ IDEA 缓存和索引介绍和清理方法,
File->Invalidate Caches / Restart.. - 相比于Eclipse的实时自动编译,IDEA更习惯手动编译降低资源消耗。其编译方式包括:
Compile编译指定类文件,不管是够修购;Rebuild编译Project所有文件,效率最低;Make推荐使用,只编译修改过的文件提高效率,适合大型项目。 - Maven配置,一图胜千言吧,一定主要注意的是,给maven建立好良好的结构,便于管理使用。对于不同的远程maven仓库,一定要设置做好相应的配置,包括不同的环境。

- 注意配置JDK1.7和1.8,包括Project级别和Platform级别,不同的Module可以选用不同的JDK,比如client一般使用1.7便于兼容,其他使用1.8。
- 配置
Build -> Compiler,取消自动Build,还可以将Build process heap size增大为1500。(如果编译出现OutOfMemoryError) - IDEA中没有类似Eclipse工作区的概念,而是通过Project和Module来管理项目代码。
- 在创建包时,需要去除
齿轮图标中的Compact Empty Middle Packages,不然空包被隐藏很尴尬,过去深受其困扰。 - 代码管理工具集成,对GIT的支持很棒,具体的分支方案根据各自团队要求即可。
- 实时代码模板
Live Template,和Eclipse有些差别,sysout->soutp,可以根据习惯自定义。文件代码模板file and code template,预设模板内容很多,需要时再仔细处理即可。此外还有更加方便的Postfix Completion来快速完成代码,比如notnull来自动生成判空语句。 - 插件安装,常见的包括lombok去除冗长代码 , Junit Generator, Alibaba Java Coding Guidelines, Sonar等。
- 如果打开maven项目看不到Package包图的情况,直接删除.idea目录后重新打开即可。
- IDEA目录类型,包括Sources, Tests, Resources, Test Resources和Excluded(排除项目)。
- 在Web相关项目时,需要注意一个Artifacts概念,Java Web项目必备一个配置就是war包展开的方式,一般选择
war exploded。 - Tomcat VM参数设置,
-Xms550m -Xmx1250m -XX:PermSize=550m -XX:MaxPermSize=1250m - 如下图在
Auto import中设置自动导包和自动去除无用包,之前深受其困扰。

- 设置方法分割线,在
Editor->Apperance->勾选Show method seperator。 - 文件可以通过
localHistory查找本地更改, 避免信息丢失。 - 修改`
Editor Tabs的show tabs in single row选项来显示多个tab页面。 - 注释配置,
CodeStyle->Java->取消勾选Line comment at first column - 设置
System settings->open project in new window,避免每次都需要选择。 - 长语句可以通过在行号上右键,选择软分行增强可读性。
快捷键
| Editing(编辑) |
|---|
| Command + , 系统首选项 |
| Control + Space 基本的代码补全(补全任何类、方法、变量) |
| Control + Shift + Space 智能代码补全(过滤器方法列表和变量的预期类型) |
| Command + Shift + Enter 自动结束代码,行末自动添加分号 |
| Control + O 覆盖方法(重写父类方法) |
| Control + I 实现方法(实现接口中的方法) |
| Command + Option + T 包围代码(使用if..else, try..catch, for, synchronized等包围选中的代码) |
| Command + / 注释/取消注释与行注释 |
| Command + Option + / 注释/取消注释与块注释 |
| Command + Option + L 格式化代码 |
| Control + Option + O 优化import |
| Option + 方向键上 连续选中代码块 |
| Option + Delete 删除到单词的开头 |
| Shift + Enter 开始新的一行 |
| Command + Delete 删除当前行或选定的块的行 |
| Search/Replace(查询/替换) |
| Double Shift 查询任何东西 |
| Command + F 文件内查找 |
| Control + Shift + F 全局查找(根据路径) |
| Live Templates(动态代码模板) |
| Command + Option + J 弹出模板选择窗口,将选定的代码使用动态模板包住 |
| Command + J 插入自定义动态代码模板 |
参考资料
推荐极客学院的相关教程IntelliJ IDEA使用教程
intellij idea如何学习?
IntelliJ IDEA使用教程
为何 IntelliJ IDEA 比 Eclipse 更适合于专业java开发者
IDEA Community(社区版) 使用Maven创建Web工程 并部署tomcat
Intellij IDEA 提交代码到远程GitHub仓库
IDEA快速入门(Mac版)的更多相关文章
- IntellijIDEA快速入门(Windows版)
跟随公司变更技术堆栈的步伐,开始学习相应工具IntelliJ的使用,之前一个大神同时也提到,最近该IDE的市场份额已然超越了免费的Eclipse,因此该工具已经到了必须会的程度了. 新年快乐,鸡年大吉 ...
- Maven快速入门--Idea版
目录 1.web项目的基本知识 1.1 项目构建 1.1.1传统的构建过程如下: 1.1.2 mavn构建项目 1.2 maven构建项目的优点: 2. 依赖管理 2.1 传统依赖管理 2.1.1 手 ...
- 数据分析师入门|Python安装MAC版
最近在学数据分析师入门课,看了大纲,感觉终于不再慌乱踩坑了,开始存档最粗暴版学习笔记,遇到停止的地方按照下文红字直接输入就OK,方便和我一样的小伙伴参考呀,老师讲的很适合我这种初学者,PUSH了很多资 ...
- spring5.02版快速入门
spring5.02版快速入门分为以下 四步, 1. 引入依赖 2. 创建beans.xml配置文件 3 创建相应的接口实现类(仅仅是快速创建,实现类不给任何方法) 4. 创建容器对象,根据id获取对 ...
- 前端学习 node 快速入门 系列 —— 简易版 Apache
其他章节请看: 前端学习 node 快速入门 系列 简易版 Apache 我们用 node 来实现一个简易版的 Apache:提供静态资源访问的能力. 实现 直接上代码. - demo - stati ...
- JavaCPP快速入门(官方demo增强版)
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- html5快速入门(四)—— JavaScript
前言: 1.HTML5的发展非常迅速,可以说已经是前端开发人员的标配,在电商类型的APP中更是运用广泛,这个系列的文章是本人自己整理,尽量将开发中不常用到的剔除,将经常使用的拿出来,使需要的朋友能够真 ...
- 专为设计师而写的GitHub快速入门教程
专为设计师而写的GitHub快速入门教程 来源: 伯乐在线 作者:Kevin Li 原文出处: Kevin Li 在互联网行业工作的想必都多多少少听说过GitHub的大名,除了是最大的开源项目 ...
- Android Studio2.0 教程MAC版 -快捷键篇
本文转至 Android Studio2.0 教程从入门到精通MAC版 - 提高篇 ( OPEN 开发经验库) 第二篇我们开发了一个Hello World应用,并介绍Android Sutdio的界面 ...
随机推荐
- 探索一个NSObject对象占用多少内存?
1 下面写代码测试探索NSObject的本质 Objective-C代码,底层实现其实都是C\C++代码 #import <Foundation/Foundation.h> int mai ...
- 开源框架 ImageLoader +ListView+GridView+RecyclerView 浅解
下载地址 链接:https://pan.baidu.com/s/1ebz99pcuvHg2bODgeOtSbg 提取码:ia39 一.导入jar包或者添加依赖 jar包地址 导入jar包:将下载的ja ...
- poj2417 bsgs算法非逆元模板,用于求解A^x=B(mod C)的方程
参考博客 https://blog.csdn.net/clover_hxy/article/details/50683832关于欧拉定理推论的证明 https://www.cnblogs.com/as ...
- 改变html结构可以实现优先加载
我们通过一个实例来看一下: 本编程题目,完成一个混合布局的编写吧!最终效果如下图: 任务 任务1:完成顶部(top).底部(foot)宽度自适应 任务2:中间分为2两栏,其中,左侧(left)宽度为2 ...
- JMeter 提供了六种定时器
JMeter提供了六种定时器,下面让我们一起来学习下JMeter的定时器. 先明确一些概念: 1)定时器是在每个sampler(采样器)之前执行的,而不是之后: 是的,你没有看错,不管这个定时器的位置 ...
- Centos7上搭建ftp服务器
ftp服务器搭建 1.安装好centos系统,配好yum仓库 其中vsftpd源在这下载 http://rpmfind.net/linux/rpm2html/search.php?query=vsft ...
- 让Mysql支持Emoji表情,解决[Err] 1366 - Incorrect string value: '\xF0\xA3\x84\x83'
mysql insert内容包含表情或者unicode码时候,插入Mysql时失败了,报如下异常: java.sql.SQLException: Incorrect string value: '\x ...
- java编译通过,为什么运行却提示找不到或无法加载主类?
java编译通过,为什么运行却提示找不到或无法加载主类? https://www.zhihu.com/question/36537093 这边提供一个关于程序中含有package关键字,使用“终端”运 ...
- 什么是redis的雪崩和穿透
缓存雪崩 如何应对缓存雪崩 首先要保证redis的高可用,可以使用redis cluster,开启redis持久化,redis之前要使用本地缓存,请求先走本地缓存,没找到再走redis 如果还是出现了 ...
- Kafka的生产者和消费者代码解析
:Kafka名词解释和工作方式 1.1:Producer :消息生产者,就是向kafka broker发消息的客户端. 1.2:Consumer :消息消费者,向kafka broker取消息的客户端 ...