IntelliJ简介 博客分类: Intellij IDEA idea
IntelliJ简介
IntelliJ Change List
这一部分是我最喜欢的功能之一了。简单来说Change List 是一个代码分组管理工具, 这里边放着你当前改动过(相对于SVN来说)的代码。如果你使用SVN代码版本管理工具的话,change list就会被启用。这里不得不说下InteliiJ的代码管理策略。默认你创建的文件(SVN中没有的), IntelliJ不会将其添加到SVN中,(开发的时候有各种测试代码),而Eclipse是默认添加到SVN中,这样好多垃圾代码都会不小心提交SVN中。当你将其放到change list中, 这部分文件就会被添加到SVN中。你可以按功能创建多个change list,并按照每个chang list来提交文件。这样结构十分清晰,同时开发多个不同功能的时候,你会感到尤为舒服。active change list ( 默认加粗 ) 是当前活动的change list, 简单来说,你改动的代码,默认都会进入到这里来(反面是你需要手动add file to change list/move file to change list), 当你没有设置任何active change list时候,所有改动的代码都会默认进入到Default change list中。
IntelliJ Change List
IntelliJ调试
IntelliJ调试,可以选中一段代码(Alt+F8)进行运算,这使得调试更加顺手。尤其是遇到方法链方式的代码的时候。
当然,还有很多高级的调试功能,比如说方法断点,异常断点等等,就不一一说了。
条件断点
条件断点就是说你可以通过Java语法的表达式告诉IntelliJ Debugger你想在什么时候线程挂起。对于循环嵌套的断点来说,你真的会感到大不同。
条件断点
重构:
IntelliJ的重构非常强悍,就拿最简单的重命名来说,如果你重命名了一个类方法名, IntelliJ会提示你是否搜索注释等等...如果你选中了,它会连注释一并改过来。
书签:书签的功能也做得十分用心,具体的我就不说了,因为说的再多也不如看视频来的实在。http://tv.jetbrains.net/videocontent/bookmarks-mnemonics
IntelliJ 双输出目录
注意这两个不同的输出目录,eclipse中只支持一个输出目录,大多数情况下这没有问题,但是如果单元测试用的多的话,测试依赖和编译的测试的.class文件你绝对不想跟正式环境放到同一个输出目录下,因为有时候会造成十分诡异的问题。从这两个编译目录来看,intelliJ的模块概念是与maven理念十分切合的。
IntelliJ的快捷键会非常让你依赖键盘,大多数时候你不需要来操作鼠标,键盘快捷键会给你非常惊喜的编程体验,让你真的有感觉是在享受编程,而不是重复冗余的操作。
IntelliJ 的优势是其强悍的代码提示,和代码审查规则。能帮助你避开很多低级的编程错误。
而且其js编辑器的代码提示完全要优于eclipse。相比之下eclipse的js编辑器就太鸡肋了。而且IntelliJ默认就带JsLint和JsHint, 喜欢用这两个工具的同学,不用再费心找插件了。
Live Template:
Live Template 也是 IntelliJ非常有特色的地方,就拿常用的System.out.println()来说,只需要键入sout,再按tab键,System.out.println(“”)就会打印出来,并且光标会置到两个引号中间。类似的还有遍历用的for(Object o : list)的itri....更多的可以看Settings->Live Template菜单选项。
IntelliJ 与 TestNG整合:
使用IntelliJ进行测试驱动开发时,IntelliJ非常方便的允许你以方法为最小单位来执行测试,
只需要在相应的方法上右键,执行测试,IntelliJ就会单独测试你选中的方法。
ctrl+shift+T : 创建单元测试
IntelliJ 与 eclipse 的不同
IntelliJ 只有工程和模块的概念, 而eclipse分为工作区和工程。而intelliJ的工程概念和eclipse很像,但又不同。
可以参考:http://xinyuwu.iteye.com/blog/1017664
用IntellIJ个人最不适应的地方就是web应用的部署。不同于eclipse,IntelliJ并不会将你的应用打包部署到一个地方,并且改动的文件,它也并不会动态得给你部署到你应用的目录。
解决方式:1 用jetty服务器来部署应用。这也是推荐的方式,得益于jetty的动态部署功能,会让你开发的过程中省去很多发布的操作。可以自己配置jetty服务器,假如熟悉maven,用jetty-maven插件会让部署变得更加简单。 2.第二种方式就是用jRebel来支持动态部署到tomcat服务器。网上有很多关于破解jRebel的用法。3.貌似最新的IntelliJ 12已经支持Tomcat的热部署了,具体的我没有研究现在, 如果有兴趣的可以google下。
IntelliJ给你完全的应用部署的的权限,让你自己决定什么文件需要添加到应用的文件输出目录。如下图所示:
最后,说点个人经验。如果你打算从eclipse跳到IntelliJ,刚开始你会非常不适应(推荐看下 Manning 出版的 IntelliJ IDEA in Action 虽然有点老不过还是很实用的),这也正常。因为之前太适应eclipse的开发方式了,而intelliJ很多地方与eclipse理念并不相符。但是如果你能坚持过这一段磨合期,你会发现号称IDEA的intelliJ真的是一款非常用心做出来的产品, 从非常贴心的细节中就可以感觉的到。
下面是一些关于IntelliJ 特性介绍的连接:
http://www.oschina.net/news/26929/why-intellij-is-better-than-eclipse
杂项:
IntelliJ 优化:
刚安装完Intellij可能会产生非常卡的第一印象。这是由于没有优化Intellij的运行环境。找到Intellij安装目录下的bin目录下,有两个exe.vmoptions结尾的文件。一个是32位,一个是64位的,十分明显。右键用文本编辑器打开。修改里边的参数就好了。
下面是我的配置64位系统下的。
-Xms800m
-Xmx800m
-XX:MaxPermSize=350m
-XX:ReservedCodeCacheSize=200m
-XX:+UseCodeCacheFlushing
-ea
-Dsun.io.useCanonCaches=false
/*上面两个参数最好调一致了,因为会省去jvm重新调整堆的操作。MaxPermSize这个参数一般默认的就够, ReservedCodeCacheSize这个参数最好调高一点。默认的64M(貌似是)反正是不够用的。*/
IntelliJ 中文乱码问题:
Settings->Appearance->Ovrride Default fonts by 选中一个支持中文的字体就行了。
IntelliJ常用快捷键:
http://lavasoft.blog.51cto.com/62575/97730
shift+enter : 直接开启下一行
代码提示中:
tab, enter, space这三个键都可以键入提示,不同的是tab会替换掉 "."之前的内容,enter则不会。space则会在键入提示之后跟个空格。
IntelliJ 常用设置
推荐阅读
-
使用Intellij IDEA在Linux进行进行Tomcat调试的方法与步骤 博客分类: Intellij IDEA idea
-
IntelliJ简介 博客分类: Intellij IDEA idea
-
idea debug(项目本身带有环境参数)下不能进入断点解决. 博客分类: Intellij IDEA idea
-
idea debug(项目本身带有环境参数)下不能进入断点解决. 博客分类: Intellij IDEA idea
-
IntelliJ IDEA 11.1 编译程序出现“非法字符: \65279”解决办法 博客分类: Intellij IDEA
-
使用Intellij IDEA在Linux进行进行Tomcat调试的方法与步骤 博客分类: Intellij IDEA idea
-
Intellij IDEA android-x86开发 博客分类: android android-x86
-
Intellij IDEA 使用 java7 compiler to compile 转为java6 博客分类: Intellij IDEA
-
INTELLIJ IDEA中自动换行和标准线的设置 博客分类: Intellij IDEA idea
-
Intellij IDEA android-x86开发 博客分类: android android-x86