由于工作中经常出现分支各种切换,使用Eclipse便不再像以前那么舒服了,不停的修改工作空间,每次修改完工作空间又是一堆一堆的个性化设置,来回的切换,真的很累。我们做软件的,怎么能不去尝试新鲜的呢,毕竟,再难走的路,也有人已经走过,我们只需要Google一下而已。

本篇适用于Idea 14.x 15.x 16.x

这次在使用了2天的IDEA之后,我发现这玩意简直屌爆了!

这次我重新进行征服IDEA过程中,遇到了很多很多的问题,当然,有一句话说的很好,遇到一件很难搞的事情,但凡你有半点犹豫,那就肯定是有办法搞定,而你只不过不愿意搞而已。

于是硬着头皮,下载IDEA14,注册,破解,优化,背快捷键,debug,解决idea卡顿,等等等等。

真是用的多了,就发现了它比Eclipse好太多了,整个开发流程很清晰,效率提升了不少。

那么我来说一下最重要的几点吧,网上的文章也都比较老了,今天是2015年11月26日。怎么安装我就不说了。

1.解决卡顿

这个是重中之重的!!必须解决,否则你每敲一行代码就卡你一下午的滋味真的不好受,首先你要有8G内存,没有8G内存的话,下面的应该也有用。但是我还是建议开发起来上8G好一些。
(1)File-Settings-Editor-General- 去掉 show quick doc on mouse move
(2)File-Settings-Perferences->Inspections,点Copy,复制一份,名称任意。然后点击下面工具栏中的Reset to empty。保存。
(3)去idea安装路径的bin目录下找到 idea.exe.vmoptions,调整IDEA的启动JVM参数,64位的修改idea64.exe.vmoptions,最小512M最大2048M即可。32位的修改idea.exe.vmoptions,最小256M,最大512M即可。

2.每次打开IDEA都会有一个进度条idea updating indices

删掉 c:/user/.IntellIJIdea14/system/caches 这个文件夹,然后 file - Invalidate Caches / Restart,点击Invalidate Caches按钮 之后,Idea会重启,重启完了,会再次updating indices,之后你随便关闭都哦了~~

3.IDEA不实时编译

话说,还是让它实时编译的好,因为有时候不编译挺难受的。
参考:http://www.mincoder.com/article/2365.shtml
http://my.oschina.net/fdblog/blog/172229

4.Jetty 热部署

参考:http://www.cnblogs.com/java-koma/archive/2012/11/30/2796737.html

5.重要的快捷键

(1)ALT+F7 类似于EClipse的 show call history 查看被谁调用
(2)Alt + 回车 智能提示
(3)Shift + Alt + 上下,类似于Eclipse Alt + 上下 把当前选中的上下移动
(4)调试Debug必备快捷键

F9            resume programe 恢复程序
Alt+F10 show execution point 显示执行断点
F8 Step Over 相当于eclipse的f6 跳到下一步
F7 Step Into 相当于eclipse的f5就是 进入到代码
Alt+shift+F7 Force Step Into 这个是强制进入代码
Shift+F8 Step Out 相当于eclipse的f8跳到下一个断点,也相当于eclipse的f7跳出函数
Atl+F9 Run To Cursor 运行到光标处
ctrl+shift+F9 debug运行java类
ctrl+shift+F10 正常运行java类
alt+F8 debug时选中查看值

(5)Ctrl + B 类似于Eclipse的F3,直接进入某类,就和鼠标+Ctrl是一样一样的。
(6)当修改了java文件时,在IntelliJ中按:‘Ctrl+Shift+F9’ 将重新编译该java文件,
如果修改了多个java文件,按‘Ctrl+F9’ 可以重新编译整个工程。

6.一个窗口开启多个项目

用Eclipse的我们都知道,一个workspace里面放置多个工程,彼此依赖啊项目什么的玩的66的,然而IDEA,新手刚上来也想要这种效果就是IDEA一个窗口里面运行多个项目,有些人说这是不科学的,他们都是一个窗口开WEB,一个窗口开Java项目,或者另一个Web项目。

下面我说下我的办法,其实是利用IDEA的Module模式,首先引入Web项目,之后再引用它依赖的项目,只不过有一定的操作步骤,跟我前来。

  1. 导入Web项目
  2. 打开项目管理器Project Structure,选择Modules,点加号,然后将它所依赖的模块导入进来

  3. 还是项目管理器Project Structure,选择Modules,点Web主项目,再点右边的加号,选择Module dependency,之后选择它依赖的模块,就算是引入进来了

  4. 这还没有结束,因为,你还想在Debug的时候,通过进入类的方法,不进入Class文件,直接进入它所依赖的模块的源码中,这就需要这么玩,把你的项目放在maven或者jar之前就行啦。下面这样操作。

未完

彻底解决 Intellij IDEA 卡顿 优化笔记,重要的快捷键的更多相关文章

  1. 彻底解决 intellij IDEA 卡顿 优化笔记

    由于工作中经常出现分支各种切换,使用Eclipse便不再像以前那么舒服了,不停的修改工作空间,每次修改完工作空间又是一堆一堆的个性化设置,来回的切换,真的很累.我们做软件的,怎么能不去尝试新鲜的呢,毕 ...

  2. 解决intellij idea卡顿的方法

    使用idea越用越卡,即使是16G内存也是卡,多开几个微服务卡死了!! 解决方案 参考网路资源整理如下几条 1. 卸载不需要用的插件 我是Java开发,对于一些默认安装的什么安卓的google的app ...

  3. android中app卡顿优化问题

     所谓app卡顿原因就是在运行时出现了丢帧,还可能是UI线程被阻塞.首先来一下丢帧现象,android每16ms会对界面进行一次渲染,如果app的绘制.计算等超过了16ms那么只能等下一个16ms才能 ...

  4. Android性能优化----卡顿优化

    前言 无论是启动,内存,布局等等这些优化,最终的目的就是为了应用不卡顿.应用的体验性好坏,最直观的表现就是应用的流畅程度,用户不知道什么启动优化,内存不足,等等,应用卡顿,那么这个应用就不行,被卸载的 ...

  5. Android 卡顿优化 2 渲染优化

    1.概述 2015年初google发布了Android性能优化典范,发了16个小视频供大家欣赏,当时我也将其下载,通过微信公众号给大家推送了百度云的下载地址(地址在文末,ps:欢迎大家订阅公众号),那 ...

  6. Android 卡顿优化 1 卡顿解析

    1, 感知卡顿 用户对卡顿的感知, 主要来源于界面的刷新. 而界面的性能主要是依赖于设备的UI渲染性能. 如果我们的UI设计过于复杂, 或是实现不够好, 设备又不给力, 界面就会像卡住了一样, 给用户 ...

  7. 解决eclipse 保存卡顿的问题

    开发十年,就只剩下这套Java开发体系了 >>>   eclipse 如果启动慢,还可以接收. 可是如果是 保存的时候卡顿, 有时候会 卡顿 3秒-5 秒的,感觉到写代码特别的不顺畅 ...

  8. GC 卡顿 优化 三色标记优势

    小结: 1. 三色标记的一个明显好处是能够让用户程序和 mark 并发的进行 Go GC 卡顿由秒级降到毫秒级以下:到底做了哪些优化? https://mp.weixin.qq.com/s/2BMGG ...

  9. WPF DataGrid OxyPlot 卡顿优化

    不是优化,我是想用这个标题吸引遇到相同问题的同学过来看看. UI如下,左边DataGrid有7列,右边OxyPlot显示折线图 列表4000+数据,折线图4000+个点,页面卡的用不了. 体现就是列表 ...

随机推荐

  1. 推荐一个文献翻译软件--Deja Vu X

    首先我的这篇博客推荐的软件并非你觉得翻译精确度有多高的软件,假设是这种话就不用往下看了,免得浪费时间,仅仅是一个对于翻译文献非常方便的工具,方面在哪请看下文. 我是不会告诉你凡事用过这个软件的人都说好 ...

  2. socket recv阻塞与非阻塞error总结

    recv是socket编程中最常用的函数之一,在阻塞状态的recv有时候会返回不同的值,而对于错误值也有相应的错误码,分别对应不同的状态,下面是我针对常见的几种网络状态的简单总结. 首先阻塞接收的re ...

  3. mysql exists 如何使用

    还没时间看,exists用的少  ==>当你只需要判断后面的查询结果是否存 在时使用exists() http://edu.codepub.com/2011/0208/29218.php 今天正 ...

  4. c# 主机和网络字节序的转换 关于网络字节序和主机字节序的转换

    最近使用C#进行网络开发,需要处理ISO8583报文,由于其中有些域是数值型的,于是在传输的时候涉及到了字节序的转换. 字节顺序是指占内存多于一个字节类型的数据在内存中的存放顺序,通常有两种字节顺序, ...

  5. 基于设备树的TQ2440 DMA学习(3)—— DMA控制器驱动

    作者 彭东林pengdonglin137@163.com 平台 TQ2440Linux-4.9 概述 上一篇直接操作DMA控制器实现了一个mem2mem的DMA传输,但是这样不符合linux driv ...

  6. SpringBoot打jar包问题

    原文:https://jingyan.baidu.com/article/6f2f55a11d6e09b5b93e6c9e.html 当你使用springBoot进行打包的时候,这篇经验会帮助到你的. ...

  7. Java 导出 CSV

    package com.cib.cap4j.cfn.util; import java.io.BufferedWriter; import java.io.File; import java.io.F ...

  8. 【Devops】【Jenkins】Jenkins插件安装失败处理方法

    本篇解释:Jenkins插件安装失败处理方法 不论是刚启动成功后进行的推荐插件安装,还是后期使用Jenkins过程中进行插件的安装.出现插件安装失败的问题,可以通过本篇解决! [注意,插件下载安装失败 ...

  9. 【spring boot】【elasticsearch】spring boot整合elasticsearch,启动报错Caused by: java.lang.IllegalStateException: availableProcessors is already set to [8], rejecting [8

    spring boot整合elasticsearch, 启动报错: Caused by: java.lang.IllegalStateException: availableProcessors ], ...

  10. 深入浅出!从语义角度分析隐藏在Unity协程背后的原理

    Unity的协程使用起来比较方便,但是由于其封装和隐藏了太多细节,使其看起来比较神秘.比如协程是否是真正的异步执行?协程与线程到底是什么关系?本文将从语义角度来分析隐藏在协程背后的原理,并使用C++来 ...