Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题

【更多资讯及资料获取,关注微信公众号号:浅醉JAVA】

Eclipse取消变量名类型自动补全问题

解决方法:修改eclipse的自带插件:org.eclipse.jface.text_

方法:

步骤一:找到插件的所在位置

window->ShowView->Other->Plug-in Development->Plug-ins

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第1张图片

如果没有这个选项,说明你没有安装这个插件。

Plug-in Development安装方法:https://blog.csdn.net/weixin_42629535/article/details/87920200

 

步骤二:在Plug-ins 列表中找到org.eclipse.jface.text,右键Import As -》Source Project

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第2张图片

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第3张图片

会得到一个项目:

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第4张图片

 

一般情况下,该项目都不会获得源码,所以需要我们通过一个插件来获得源码:Java Source Attach

Java_source_attach插件安装方法如下:

https://blog.csdn.net/weixin_42629535/article/details/87920329

  安装成功后,直接选中:org.eclipse.jface.text ..这个jar包,右键点击Attach java Source 会自动下载源码包。

  源码包一般会放置在:C:\Users\Admin\.sourceattacher这个文件夹下。

步骤三:获取源码项目

找到org.eclipse.jface.text的源码jar包,

解压获取获取文件备用。

步骤四:创建一个新的java项目,将解压文件中的org文件夹,放到新建项目的src下,其他所有文件直接放置到src的父目录下(也就是根路径下)。

如下:有报错是正常的,待导入依赖包后即可消除。

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第5张图片

步骤五:找到:META-INFàMANIFEST.MF文件,双击打开,如下图,选择到Dependencies页面。

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第6张图片

在Automated Managenment of Dependencies中添加依赖jar包,并ctrl+s保存。如下:

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第7张图片

(如果你不知道自己版本的依赖jar包有哪些,可以双击原始的插件查看:如下)

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第8张图片

保存上述文件后,在项目上右键点击Add Libraryes。

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第9张图片

选择Plug-in Dependencies 点击next

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第10张图片

此时依赖的jar包就会出现字下方,点击finish即可,此时报错消失,并多出一个文件build.prperties。(如果没有步骤六,此处Plug-in Dependencies框里是没有内容的)

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第11张图片

 

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第12张图片

步骤六:找到CompletionProposalPopup类

rc/org/eclipse/jface/text/contentassist/CompletionProposalPopup.java,找到这样一行代码

原始Java代码  

char[] triggers = t.getTriggerCharacter();   

if(contains(triggers,key))  {

 if 里判断你按下的键(key)是否在triggers 中,如果是,就触发第一行提示的代码。变量自动补全就是在空格或=之后触发的。于是,我们只要在这里排除掉空格和=号即可,如下:

修改后Java代码

char[] triggers= t.getTriggerCharacters();  

if ((key != '=') &&(key != 0x20)&&contains(triggers, key)) {

   修改成这样,空格和等号就不会触发自动补全了。

   如下所示:

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第13张图片

步骤七:将该项目做出jar包

项目右键,Export

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第14张图片

选择Java中的JAR file即可点击next

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第15张图片

 

自己设置路径后,直接点击finish即可

Eclipse2018-12 最新最详细的Eclipse取消变量名类型自动补全问题_第16张图片

步骤八:插件包替换

找到eclipse\plugins文件夹下的org.eclipse.jface.text…插件包。先将原始的jar包进行备份(防止出错后无法恢复),将修改后的插件包的名字修改的和原始包一样,并将其替换,重启eclipse即可。这样再输入变量时,按空格不会再触发类型自动补全。

如果你是自定义安装路径,且没有在该文件夹下找到这个插件,那么这插件可能在C里。C:\Users\admin\.p2\pool\plugins

【====================转载请标明出处==============】

【更多资讯及资料获取,关注微信公众号号:浅醉JAVA】

你可能感兴趣的:(Eclipse问题)