idea的起步配置
工欲善其事,必先利其器
1.安装
https://www.jetbrains.com/idea/download/#section=windows

可以选择不同平台的安装包,版本一般Ultimate,不想破解和购买的话也可以选择Community免费版
2.破解
idea.lanyus.com上拿注册码或者JetbrainsCrack.jar破解包进行破解,如果idea版本比较新的话,JetbrainsCrack.jar一定要用最新版的,不然可能出现key is invalid的问题
3.Settings配置

3.1配置忽略列表
settings->Editor->File Types,添加*.iml和.idea忽略,这样这些文件不会出现在项目目录列表中,反正没事也不会关心这些文件

3.2自动注释
文件头注释 Setting -> Editor-> File and Code Templates

3.2.1函数注释
函数注释相对麻烦一些,没eclipse那么智能
Setting -> Editor-> Live Templates
点击加号,默认会增加在user这个group下,然后增加想要生成注释的快捷键,比如这里用/**作为快捷键,在函数上输入这个,再按Tab就能自动生成注释

/**
* @Description:
*
* @Author: xxxx
* @Date: $date$ $time$
$params$
* @return: $returns$
**/
其中$date$这些部分是在Edit variables中自定义的

值得注意的是params的默认定义methodParameters()是数组形式,并不好用
用groovyScript脚本替代会更好一些
groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\n\\b' : '')}; return result", methodParameters())
3.3快捷键
Settings->Keymap
可以修改为eclipse的快捷键,但还是咬牙学习一下比较好

3.3.1常用快捷键
ALT+回车 自动修正
CTRL+J 自动脚本代码
CTRL+ALT+L 格式化代码
CTRL+E 最近更改的代码
CTRL+ALT+SPACE 类名或接口名提示
双击SHIFT 在项目的所有目录查找文件
Ctrl+N 查找类
Ctrl+Shift+N 查找文件
CTRL+G 定位行
F3 向下查找关键字出现位置
SHIFT+F3 向上一个关键字出现位置
F4 查找变量来源
Ctrl+X 删除行
Ctrl+D 复制行
Ctrl+Alt+ left/right 返回至上次浏览的位置
3.4插件
在settings的Plugins中直接搜索要装的插件名

或者离线安装,先搜索并下载插件,网址http://plugins.jetbrains.com/idea
下载的时候注意适用版本范围,一般下载下来都是zip格式或者jar格式

版本可以在idea的Help->about选项中查看

下载完后点开Installed右侧的小齿轮,选择从磁盘安装
settings -> plugins -> install plugin from disk

3.1.1插件推荐
1)KeyPromoter X
起步阶段的神器,在idea中进行操作后,如果有快捷键可用,他会提示你能用什么快捷键去替代鼠标操作,潜移默化的学习快捷键
http://plugins.jetbrains.com/plugin/9792-key-promoter-x

比如执行项目编译后,会提示你:你这个操作用了几次,用什么快捷键可以执行该操作,觉得烦的话,也可以不再提示
2)Alibaba Java Coding Guidelines
阿里巴巴的代码检查工具,可以检测代码中不规范的地方,并提出修改建议
http://plugins.jetbrains.com/plugin/10046-alibaba-java-coding-guidelines

3)FindBugs
老牌代码检查工具,相比阿里巴巴那个,更适合全项目检查
http://plugins.jetbrains.com/plugin/3847-findbugs-idea


一样可以检测代码中不规范的地方,并提出修改建议
3)AceJump
初用会很不习惯,并不见得能提高效率,熟练后感觉还不错,因为从键盘切换到鼠标点击输入目标地点,这个时候恰好又需要右手键入,效率会很低,但全键盘操作的话,就可以避免这种情况,提高了集中度
学习曲线和Vim差不多,上手以后会有快感,而且强制加深了你对代码的熟悉程度
https://plugins.jetbrains.com/plugin/7086-acejump
操作方法是ctrl+; 然后输入你要跳转的代码首字母,比如下面这个例子,写到return了,我想修改DEFAULT_VALUE的值

鼠标操作的方式是精准的点击双引号中间

AceJump的方式是①ctrl+;②shift+"(正常输入"需要shift)③j

4)CodeGlance
和VSCode一样的缩略导航栏
https://plugins.jetbrains.com/plugin/7275-codeglance

4)HighlightBracketPair
代码高亮,有点吃性能,但是很好用
https://plugins.jetbrains.com/plugin/10465-highlightbracketpair

5)Rainbow Brackets
让括号带颜色,多层嵌套的时候方便配对,和HighlightBracketPair功能有点冲突,性能足够就HighlightBracketPair,性能不足就用这个
https://plugins.jetbrains.com/plugin/10080-rainbow-brackets

高亮效果(默认快捷键 mac : command+鼠标右键单击, windows : ctrl+鼠标右键单击):

选中部分外暗淡效果(默认快捷键 alt+鼠标右键单击):

idea的起步配置的更多相关文章
- PHP最佳实践(译)
原文: PHP Best Practices-A short, practical guide for common and confusing PHP tasks 译者:youngsterxyf 最 ...
- 前端笔记之React(一)初识React&组件&JSX语法
一.React项目起步配置 官网:https://reactjs.org/ 文档:https://reactjs.org/docs/hello-world.html 中文:http://react.c ...
- 0002SpringBoot整合Junit
前提条件:SpringBoot已经整合了Mybatis,至于SpringBoot如何整合Mybatis可参考我的上一篇文章 SpringBoot为什么要整合Juni? SpringBoot整合了Jun ...
- Chimm.Excel —— 使用Java 操作 excel 模板文件生成 excel 文档
Chimm.Excel -- 设置模板,填充数据,就完事儿了~ _____ _ _ _____ _ / __ \ | (_) | ___| | | | / \/ |__ _ _ __ ___ _ __ ...
- Flutter集成高德定位和地图功能
定位集成 配置高德定位依赖库 新建 Flutter 项目,使用 Android Studio 打开项目里的 android 工程,或者右键 android 目录-> flutter -> ...
- Flutter开发进阶学习指南Flutter开发进阶学习指南
Flutter 的起源 Flutter 的诞生其实比较有意思,Flutter 诞生于 Chrome 团队的一场内部实验, 谷歌的前端团队在把前端一些"乱七八糟"的规范去掉后,发现在 ...
- 爱了!阿里大神最佳总结“Flutter进阶学习笔记”,理论与实战
前言 "小步快跑.快速迭代"的开发大环境下,"一套代码.多端运行"是很多开发团队的梦想,美团也一样.他们做了很多跨平台开发框架的尝试:React Native. ...
- 双倍NB!字节跳动资深研发花7天肝出的这份286页“Flutter技术进阶”
前言 截至目前,字节跳动有很多业务落地了 Flutter 技术方案,包括今日头条.西瓜视频.皮皮虾等 20 多个业务在使用 Flutter 开发,有纯 Flutter 工程,也有 Flutter 与 ...
- 【转】1.5 起步 - 初次运行 Git 前的配置
原文网址:http://git-scm.com/book/zh/v1/%E8%B5%B7%E6%AD%A5-%E5%88%9D%E6%AC%A1%E8%BF%90%E8%A1%8C-Git-%E5%8 ...
随机推荐
- mangTomany 自关联之个人感悟
介绍: 应用场景:评论表 manyTomany 原则上就是一个类 自己建立一个关系表 这个关系表的列 由自己定义 例如 图中 from_userinfo_id() 是人为规定的 男生列 to_use ...
- Django-website 程序案例系列-17 forms表单验证的字段解释
1.Django内置字段如下: Field required=True, 是否允许为空 widget=None, HTML插件 label=None, 用于生成Label标签或显示内容 initial ...
- mysql 常用命令导入导出修改root密码
MySQL 忘记口令的解决办法如果 MySQL 正在运行,首先杀之: killall -TERM mysqld. 启动 MySQL :mysql --skip-grant-tables & / ...
- BZOJ2843极地旅行社&BZOJ1180[CROATIAN2009]OTOCI——LCT
题目描述 给出n个结点以及每个点初始时对应的权值wi.起始时点与点之间没有连边.有3类操作: 1.bridge A B:询问结点A与结点B是否连通. 如果是则输出“no”.否则输出“yes”,并且在 ...
- matplotlib极坐标方法详解
一.极坐标 在平面内取一个定点O,叫极点,引一条射线Ox,叫做极轴,再选定一个长度单位和角度的正方向(通常取逆时针方向).对于平面内任何一点M,用ρ表示线段OM的长度(有时也用r表示),θ表示从Ox到 ...
- 因为代理原因导致的NotSerializableException
错误信息: NotSerializableException Failed to serialize object Proxy 报这个错,一开始就往没有序列化这一块想,可是报错点是: excelT ...
- Debug时含有的子元素,在代码里获取不到的问题
比如,Debug时如下图展示: 我想要获取的是:ansList.get(i).getComponent().getConnectorId() debug时明明有这个元素,但是当我写出来的时候却发现:a ...
- [hgoi#2019/3/10]赛后总结
关于本次hg模拟赛,题目来源于CF1110. t1-无意义运算符(meaning) 题目描述 最大公约数和位运算之间有共同点吗?是时候来研究一下了. 给定一个正整数a,请找到一个闭区间[1,a-1] ...
- hdu3072 Intelligence System (最小树形图?)
题意:给一个有向图,问要从0号点能到达所有点所需要经过路径的最小权值和是多少,然而,若两点强联通,则这两点互相到达不需要花费.保证0号点能到达所有点 tarjan缩点以后直接取每个点入边中花费最小的即 ...
- Luogu 2540 斗地主增强版(搜索,动态规划)
Luogu 2540 斗地主增强版(搜索,动态规划) Description 牛牛最近迷上了一种叫斗地主的扑克游戏.斗地主是一种使用黑桃.红心.梅花.方片的A到K加上大小王的共54张牌来进行的扑克牌游 ...