使用IDEA开发

Using IDEA for development

Posted by XuXinkun on March 21, 2016

IDEA

在使用IDEA之前,我是eclipse的忠实用户。无论是最初学习java,还是后来用python/golang。 eclipse丰富的插件已经满足了我大部分的使用,直到在师弟的大力推荐下使用了IDEA。

一开始,对于IDEA,我是拒绝的。毕竟用惯了eclipse,键位都熟悉了。但是IDEA提供了eclipse的keymap,让我可以几乎不用费力就可以入手使用IDEA了。 同时,其高效的索引和智能给我非常多的便利。我现在就已经全面转向IDEA。而且IDEA丰富的插件,提供的功能也非常让我满意。

IDEA的几个功能是我特别满意的:

  • deployment

IDEA支持自动将代码发布到指定服务器的指定目录。而且可以跨平台(从windows可以发布到linux服务器上)

  • docker

IDEA支持docker插件,可以远程控制容器

  • search

高速的索引。当然内存也会多占用一些。一般这不会是太大的问题。而且可以对IDEA的功能进行快速搜索(快捷键ctrl+shift+a)。

  • python remote interprtor

python可以使用远程的interprtor。不过这个在多worker的程序调试时会有一些问题。

  • smart

还有其他一些智能功能。比如提醒你缺少的库,提示你的配置等。用起来确实很顺手。

Golang

促使我全面导向IDEA的是golang。eclipse的golang插件用起来很卡。而且提示很不智能。相比起来,IDEA的Go插件更加智能。

在IDEA的plugins中中首先安装Go插件。

Go-plugin

然后在设置中设置Go SDK。

在打开项目时,建议使用与项目路径相符的目录结构。以docker和kubernetes举例:

├── idea
│  ├── src
│  │   ├── k8s.io
│  │   │    ├── kubernetes
│  │   ├── github.com
│  │   │    ├── docker
│  │   │    │   ├── docker

然后将idea目录添加至go libraries中。

Go-settings

这样在阅读golang源码时,就可以直接跟踪函数了。

SVN

在windows上使用svn,一般都是用的TortoiseSVN。在使用IDEA,配置svn的时候,需要配置svn的 command line,即svn.exe的位置。

svn-settings

如果没有svn.exe,一般是在安装TortoiseSVN时没有安装。重新安装一下,勾选command line client tools即可。

TortoiseSVN

python remote interprtor

python可以使用remote interprtor进行开发。在settings->project->project interprtor中add remote。

python remote interprtor

配置好ssh选项,IDEA将会自动将远程服务器中python的库同步到本机。在之后,设置RUN/DEBUG Configurations的,就可以设置使用远程的interprtor了。

直接run目前没看到什么问题,但是多worker的程序使用debug时,不能正常工作。

IDEA主题下载

IDEA的editor样式有很多样式,可以在这里进行下载。然后再File->Import Settings加载就可以了。