`

IntelliJ简介

阅读更多

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 常用设置

http://blog.csdn.net/hudie1234567/article/details/7018833

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics