修改Eclipse代码补全Bug


作为一个IDE,我喜欢持续不断地配置IDE以此达到开发速率的提升.

 

很早就发现Eclipse有一个bug,当我选择按任何字母都提升代码的情况下,会出现一个问题:

 

比如我输入 String s这个时候Eclipse就会提示让我变量名设置成string,可是如果此时我按下空格或者=,这个string就直接上屏了.

 

解决方案

 

http://tieba.baidu.com/p/2466687622


1,先找到相关的插件: window -> show view -> plug-ins
找到插件org.eclipse.jface.text,右键点击,选择import as Source Project,导入完成后,在你的workspace就可以看到这个project了
2.修改代码
在src/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java文件中,找到这样一行代码
char[] triggers = t.getTriggerCharacter();
if(contains(triggers,key))
在那行if判断里面,eclipse会判断key(就是你按下的键)是否在triggers中,如果是,那就触发下面的第一行提示上屏的代码.所以我们要做的就是把空格和=号排除就可以了:
if(key != '=' && key != 0x20 &&contains(triggers,key)){
.........

}
代码修改成这样后,提示的时候按下空格或者等号,提示就会没掉,也不会自动补全了咯!!!
3.把修改好的org.eclipse.jface.text导出
右键点击你的workspace里的org.eclipse.jface.text,选择export-->Deployable plugins and
fragments, next,destination 选择
archive file,然后finish.你就可以在zip文件里看到生成好的jar ,用它替换掉eclipse/plugins里面的同名jar包,就可以了。



http://blog.csdn.net/liuhhaiffeng/article/details/7179243 (代码有误)

 

大概就是导入该视图的源码,自己修改要注意的是,许多Eclipse版本内置没有源码的,只有Classic版本(现在改名为Standard)才有


最好的解决方案就是下载一个J2EE版本,同时下载一个与之对应的Standard版本,然后自己把Standard版本里的那个org.eclipse.jface.text通过修改源码的方式fix掉,然后export,打包,放到J2EE版本里去, 由于是相同版本的,不存在兼容性问题


 

 

你可能感兴趣的:(修改Eclipse代码补全Bug)