1、显示方法API;类似eclipse把鼠标放到方法上有api信息。
setting/keymap中搜索 quick docs;(有说默认快捷键是ctrl+q,但我的不是待查找快捷键)
2、foreach、sysout、main等eclipse快捷输入方式;
在idea中sysout -> sout,main ->psvm (public static void main),
有foreach但不如eclipse的智能。但有很多别的itar、iter....
注:这些输入快捷方式,都可以在File – settings >> live template中配置/自定义。
3、重要的几个快捷键:
alt + insert :自动生成各种代码,如set/get
alt + enter :导包、修正错误、自动生成方法返回值变量名
alt + F1 (?不确定)
4、idea中alt+/生成的方法没有自动生成参数名,不知道怎么解决!
5、查看类图;在类处右键->show diagram
6、代码提示忽略大小写:
打开设置(CTRL+ALT+S)搜索editor,找到“Code Completion”->点击Case sensitive completion后面的选择框,选中None,然后一路确定即可。
参考:http://blog.csdn.net/shijiebei2009/article/details/38541141
7、console中ctrl+F快捷键无效。
主要是因为用的eclipse的keymap。导致ctrl+F实际功能是Replace,而不是Find。在keymap中修改Find的快捷键.
参考:http://blog.csdn.net/zuoyixiao/article/details/53516252
8、java文件未被正确编译成class
现象:在java文件的图标上有一个x。查看target/classes/...发现此java没有对应的class
解决:settings - build - compiler - Excludes 中把此java移除。(rebuild project,如果rebuild无效,可能需要重启idea)
9、java编译版本错误
现象: Error:java: Target level '1.7' is incompatible with source level '1.8'. A target level '1.8' or better is required
解决:
1) file - setting >>Java Compiler, 根据module设置各自的compiler; (这不一定有用)
2) file - project Structrue >> modules, 根据module设置自己的Module SDK;
参考: http://www.cnblogs.com/ninth/p/6121997.html
10、svn无效
现象: Can't use Subversion command line client: svn Probably the path to Subversion executable is wrong. Fix it.
解决: file - setting >> Subversion, 去掉Use command line client勾选。或者配置svn.exe路径。
11、类方法注释
类似eclipse在类方法上"/**"+ENTER,出现对应的模版:
/**
* description
* @author VergiLyn on 2017年7月18日
* @param memberName
* @param nonce
* @return
*/
private static String ssoSignature(String memberName, String nonce) {
}
在idea中, 有默认的"/**"+ENTER, 但不知道怎么修改此模版(在Live Template中未找到)
解决1:在live template中定义
$param$:
groovyScript("def result=''; def params=\"${_1}\".replaceAll('[\\\\[|\\\\]|\\\\s]', '').split(',').toList(); for(i = 0; i < params.size(); i++) {result+=' * @param ' + params[i] + ((i < params.size() - 1) ? '\\r\\n' : '')}; return result", methodParameters())
缺陷 : methodParameters()只能在方法内获取, 所以如果在方法外(方法头部)得到的是null。
解决2: 安装idea插件JavaDoc。(官方仓库的版本太老,2017可以用但没有编辑菜单,去github下载: https://github.com/zhzhxtrrk/intellij-javadocs)
然后在setting – JavaDoc >> Templates中设置.(是代码形式的, 跟eclipse不一样, 可以参照默认的修改)
缺陷 : 并没有eclipse的定义方便。
12、IDEA + Jetty,jetty在windows下锁静态文件的问题
当修改js、jsp等热部署update提示:
java.io.FileNotFoundException: *****.js (请求的操作无法在使用用户映射区域打开的文件上执行。)
不是idea的问题,jetty自身的原因!
参考: https://www.iflym.com/index.php/code/201510130001.html?utm_source=tuicool&utm_medium=referral
1) 如果是maven插件形式jetty,修改对应jar中的webdefault.xml
2) 如果是server形式的jetty,修改目录etc/webdefault.xml中的设置无效!(超级坑)
找到jetty server的安装目录,找到lib中的 jetty-webapp-version.jar,修改jar中的webdefault.xml!
13、IDEA自动去掉未使用的import
settings - editor - general >> Auto Import, 勾选"Optimize imports on the fly(for current project)".
(实时优化imports)
14、IDEA优化import -> import *;
settings > code style > Java > imports ,
class count to use import with '*' 设置500
Names count to use static import with '*' 设置500
参考: http://blog.csdn.net/tiantiandjava/article/details/52690138
15、Live Template的光标位置
live template中的默认参数,
$SELECT$ : 光标开始位置
$END$ : 光标结束位置
参考: http://blog.csdn.net/wulong710/article/details/42774967
16、IDEA中找到所用的TODO
快捷键ALT+6, view > tool window >> TODOs ,展开TODO tab。