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的界面 ...
随机推荐
- Confluence 6 配置草稿保存的时间
这个设置仅仅应用到 Confluence 6.0 及后续版本中,如果你选择 禁用(disable )collaborative editing. 当协同编辑被启用后,我们将会保存所有的修改. 当协同编 ...
- Confluence 6 管理你的 Confluence 许可证
你的许可证能够让你在运行 Confluence 的时候在指定的时间段获得特定的支持.同时这个许可证也定义了在你 Confluence 中可以使用的用户数量. 希望快速的查看当前的许可证信息,你可以进入 ...
- error: js/dist/app.js from UglifyJs Unexpected token: name (Dom7)
What you did I have installed Swiper as normal dependency in my Project and import it to my scripts ...
- 用flask实现的添加后保留原url搜索条件
1.具体实现 #!usr/bin/env python # -*- coding:utf-8 -*- from flask import Flask,render_template,request,r ...
- python----常用功能
sintance和type class Foo(object): pass class Bar(Foo): pass obj = Bar() # isinstance用于判断,对象是否是指定类的实例 ...
- hdu2871 区间合并(类似poj3667)+vector应用
用vector进行插入和删除操作! 总是有些地方处理不好,对拍了才知道错在哪里,, /* 给定一些操作 reset 清空 new a ,申请最左边的连续a个空间 free a,清空a所在的块 get ...
- CF 1051F
题意:给定一张n个点,m条边的无向联通图,其中m-n<=20,共q次询问,每次询问求给定两点u,v间的最短路长度 第一眼看见这题的时候,以为有什么神奇的全图最短路算法,满心欢喜的去翻了题解,发现 ...
- Linux基础三:linux目录结构和目录文件的浏览、管理及维护
目录文件的浏览.管理及维护(一) 1.Linux文件系统的层次结构 1)Linux文件系统的树状结构:在Linux或UNIX操作系统中,所有的文件和目录都被组织成一个以根节点开始的倒置的树状结构. 2 ...
- “Error:(1, 1) java: 非法字符: '\ufeff'”错误解决办法
原因 用Windows记事本打开并修改.java文件保存后重新编译运行项目出现“Error:(1, 1) java: 非法字符: '\ufeff'”错误,如下图所示: 原来这是因为Window ...
- python---实现多个有序列表的合并
我觉得不用抄书上的代码. 遇到实现问题,应该结合python本身的功能去解决. 比如,当合并有序列表时,为什么一定要一项一项比较,而不是使用list的sort函数呢? # coding = utf-8 ...