从Eclipse转移到IntelliJ IDEA

  • 2018-03-19
  • 0
  • 0

用了一年多的WebStorm进行ionic的开发,习惯了之后在使用Eclipse进行Java Web开发的时候,编辑js或sass等前端文件的时候各种不爽。在用WebStorm之前也尝试使用IntelliJ IDEA,但最终因为各种不习惯而作罢。

下载安装及基本设置

首先在IetelliJ IDEA官网下载最新Ultimate版(当前版本号是2017.3.5),安装之后首先设置点击 Configure - Settings 进行一些基础的设置。

  • 在搜索框中输入 encoding, 将相关的编码都修改为UTF-8,防止出现乱码等问题;
  • 在搜索框中输入 font,修改软件界面和编辑器的字体和字号,软件界面的字体在 Appearance & Behavior - Appearance 中,需要先勾选 Override default fonts by;编辑器的字体在 Editor - Font 中。
  • 在Keymap中选择 Eclipse,方便从Eclipse中过渡。

SVN导入项目及相关操作

选择 Check out from Version Control - Subversion,将SVN上的项目导入到IntelliJ IDEA中

初次打开的时候会出现下面的错误:

Cannot load supported formats: Cannot run program "svn": CreateProcess error=2, The system cannot find the file specified

这个时候需要在设置 Version Control - Subversion 中将 Use command line client 去掉(见下图):

刚从Eclipse转到IntelliJ IDEA的时候,对其中的版本控制管理有一些不习惯,Eclipse可以直接在左边项目视图中右键对文件进行版本控制,而IntelliJ IDEA则统一在Version Control视图中进行管理,可以通过点击左下角图标打开(见下图):

Maven相关

整理Maven项目

记得之前尝试使用IntelliJ的时候,第一次导入多模块的Maven项目之后,解析出现了混乱,没有像Eclipse那样一目了然,这个时候可以通过File - Project Structure 菜单打开项目设置:

进入Modules,先将现有的maven模块全部删除,再点击+按钮并选择Import Module,选择项目的pom.xml文件即可。

运行Maven命令

首先在左下角点击图标打开 "Maven Projects" 视图:

可以看到里面会列出Maven常用的命令,可以点击 Run - Edit Configurations 菜单打开Run/Debug Configuration对话框,然后点击 + 图标并选择Maven,新建一个Maven命令。

内容跟Eclipse中差不多,Working directory选择项目的根目录,Command Line为maven的命令,可以在Runner标签中设置VM的一些参数,比如jetty的端口等(需要首先将Use project settings勾掉)。保存之后就可以选择之后点击右上角的 按钮执行了。

使用JRebel

使用JVM参数的方式启动

首先下载JRebel的zip文件,解压到某个目录下面,然后使用下面的JVM参数启动:

-noverify -javaagent:<your_jrebel_home>\jrebel.jar -Xms1024m -Xmx1024m -Xmn128M -Xss1M -Xverify:none -XX:PermSize=64M -XX:MaxPermSize=512m -Djetty.port=80

需要将上面的your_jrebel_home替换成你自己的JRebel目录,后面的-X...是JVM的参数,不是必选的,可以根据实际情况进行设置。

使用IntelliJ插件的方式启动

首先安装JRebel插件,在运行之前确保所要运行的项目支持JRebel,可以在JRebel Panel中进行设置(可以通过View - Tool Windows - JRebel 菜单打开),如下图:

最后点击 Run - Run with JRebel 'xxx' 菜单或点击右上角的图标,可以启用JRebel。如果在控制栏中输出类似下面的内容表示运行成功:

启用自动编译实现保存即刷新

使用上面两种方式启动JRebel之后,由于默认情况下IntelliJ没有使之修改源码之后自动编译,因此每次修改之后需要手动按Ctrl+F9之后才能生效,这样非常不方便,可以设置成自动编译。
首先打开Help - Find Action 菜单(实际情况下可以使用快捷键打开比较方便),输入registry,然后选择Registry,如下图:

在进入的Registry对话框中将compiler.automake.allow.when.app.running选中,另外IntelliJ IDEA默认情况下保存了文件之后会延迟1500ms之后在进行后续的操作的,这样在保存java文件之后会等1.5s之后才会被自动编译并被JRebel进行加载,不像Eclipse中那样感觉是实时的,如果想要跟Eclipse实现一样的效果,可以调小 compiler.document.save.trigger.delay 参数的值。

最后还需要在系统设置中设置为自动编译,打开设置对话框,在Compiler下面确保勾选下面的两个选项:

这样设置之后,修改完java文件内容,保存之后JRebel会自动进行编译和加载。

几个实现Eclipse操作的小习惯

同一个文件实现多个窗口

在Eclipse中可以在文件标签右键选择 New Editor,这样就会出现两个同文件的窗口,然后拖动另外一个窗口到指定的位置(比如下面),这样就会形成多个窗口,方便前后进行参考。IntelliJ IDEA中实现同样的效果需要右键选择 Split Vertically或Split Horizontally,这样就会形成两个上下或左右的窗口了,可以把多个标签一起都拖到下面,不过相同文件的两个标签不能同时在一排,这一点跟Eclipse不同。

关闭一个标签之后显示上次编辑的标签

在Eclipse中如果关闭一个标签之后,会自动打开上一个编辑过的标签,而IntelliJ IDEA默认情况下会打开左边的第一个标签,感觉很别扭。可以通过下面的设置达到上面的效果:

自动显示javadoc内容

在Eclipse中鼠标移到某个类名或方法名上,会自动显示javadoc的内容,IntelliJ默认是关闭的,可以通过下面的方法进行设置:

代码缩进及风格

代码风格因人而异,可以在设置中的 Editor - Code Style 中进行调整。我个人喜欢使用tab代替空格,并且多参数缩进不喜欢tab太多,设置如下:

基础教程推荐

对于刚刚切换到IntelliJ IDEA的新手来说,需要重新理解一些基础的概念,下面有两个不错的基础教程可以根据自己的情况来学习:
IntelliJ IDEA神器使用技巧 慕课上关于IntelliJ IDEA的基础视频教程,零基础入门,对于有Eclipse或WebStorm相关使用经验的可以快速跳着看不熟悉的内容。
IntelliJ IDEA 使用教程 极客学院的使用教程,也是基础入门,内容一目了然。

参考文档
Intellij idea subversion checkout error: Cannot run program “svn”
Intellij IDEA 一些不为人知的技巧
IntelliJ IDEA 在使用Subversion进行版本管理时,怎么忽略某个文件或者文件夹
使用IntelliJ IDEA 15和Maven创建Java Web项目
IntelliJ IDEA 2017.2+ JRebel 7.0.12 热部署
使用jRebel在IntelliJ IDEA 中进行 Java 热部署
IntelliJ IDEA常用快捷键和使用技巧
Intellij IDEA & Sass 使用记录汇总
Change to most recently used tab when closing a tab in IntelliJ IDEA?
How to see JavaDoc in IntelliJ IDEA?

评论

还没有任何评论,你来说两句吧