为什么80%的码农都做不了架构师?>>>
idea的git操作有坑
1. 当项目是git管理的,创建一个文件时就会提示:“Do you want to add the following file to git”,就是自动把新文件添加到VCS(版本管理)。
一般选否,因为新增的文件未必是想要提交的,例如idea自己生成的工程配置文件,不小心push上去就是麻烦事。而且如果不小心选了“是”,并且勾选“don't ask again”,而这个选项也不知道在哪改,那么以后一旦有不想要的文件自动加进去VCS就得把手动把文件revert回去。
2. 有时候我们想把自己做的东西放到git上,有两种方式:
- 把已做好的idea的项目push上去。idea需要做的操作挺原始的,先找到“create git repository”,再找到“remote”添加url链接,commit之后就可以push上去了,这和直接用git打命令没区别。而MyEclipse就方便多了,直接右键——>Team——>Share Project所有步骤都会出来。
- 在git创建好项目后check out下来开始做,这个时候就有个坑了。再“Checkout from Version Control”过程中会经过这样一个界面:
如果按照默认勾选,那么新增选项里没有class文件可选,按照网上的说法是在“Project Structure”——>“modules”——>Souces中加一个src文件夹。但是进入后界面是这样的:
并没有Sources配置!经过各种重复试验后, 解决办法是在那个界面中不要勾选,如果不小心勾选了则把这个model删除重新新增一个model即可。
3. idea的git功能只能比较不同branch,不能比较一个branch不同的commit
4. 总之,idea的git操作比eclispe少多了,有些时候只能用git命令操作,而eclipse的git插件基本能满足开发需求
idea注释模板不方便
例如类注释模板
/**
* @author
* @version
* @date
*/
idea只有新建类时会在类上面自动加这个,eclipse是在类上面按“/**”回车。在idea按“ /**”加回车只会给方法加注释模板,不会在类上加上面那个东西,有时挺不方便的。
idea自动引入类并不方便
eclipse 有organize import功能,快捷键crtl+shift+o,可以很方便地引入需要的类,并去除无用引入的类,在idea中只能解决普通敲代码情况下引入新类的情况。假如这个类是从别的地方复制过来的,出现了很多类import错误,使用eclipse可以一个快捷键搞定,而使用idea你需要先删除顶部错误的import,然后光标定位到错误的类上,使用快捷键alt+enter修复,而且每一个类都按一下!
idea关键词自动补充不方便
eclipse声明泛型变量时,如eclipse打出Map回车会生成“Map
idea不会自动生成@Override注解
@Override注解在开发上十分重要,例如在写一个接口实现类时,发现接口方法名或参数要改一下,修改了接口的方法名或参数,如果实现类方法上有加@Override注解,就会提示错误。而idea实现接口方法时不会自动加@Override注解,只是在左边显示向上或向下箭头(向上表示这个方法是重写父类方法),如果接口方法改了,实现类没有加@Override注解的方法是不会提示错误的,这个时候就得靠自己记得那个地方实现了这个方法,自己去找。当然类会报没有实现父类接口的错误,快速修复错误也只是创建实现方法,可原来的实现方法的逻辑有用啊,这时只能通过方法名找到之前写的实现方法,但如果方法是重载的有多个方法名一样就更难找了。idea没有@Override注解(可能可以配置,但我至今没有找到配置的地方),也是我把eclipse当主要开发工具,idea当辅助的原因。
idea配置Tomcat很繁琐
idea每个web项目部署到tomcat时,都必须配置一遍“Edit configurations”,而且配置起来步骤还挺繁琐
第一,在Edit configurations给项目添加tomcat启动时,必须添加参数“-Dfile.encoding=UTF-8”否则控制台乱码(idea其实有很多地方有乱码问题,都得配置,不能一步解决)
第二,还要配置下面的东西,才能使用debug模式
需要这样是因为idea很奇葩的默认需要整个工程都编译通过才能运行项目,很多时候一些无关紧要的东西我们是想忽略直接启动的。
idea自动编译很卡
从eclipse转idea的时候肯定会遇到这个坑,当一个类改了一些代码,本来会引起其他类错误而idea却不显示文件错误,而是要点进去它才报错。这是因为idea不是自动编译的,而是要手动make。如果要自动编译,可以百度一下怎么配置,但是你会发现开启自动编译后,idea卡得飞起。
总结:目前为止我使用idea至今所总结的问题就这些,不知道为什么现在很多开发人员都鼓吹idea好用,比eclipse爽。idea除了maven下载jar包不会卡死,比较流畅,皮肤逼格比较高之外,我并不觉得idea开发效率上比eclipse好。