Eclipse自动完成在某些代码行之间中断

时间:2017-01-27 13:34:27

标签: java eclipse autocomplete content-assist

我在Eclipse的自动完成问题上遇到了一段时间的问题,因为它在编写项目的过程中停止了工作。经过大量不成功的调试后,我尝试缩小我的代码并得到我的文件的简单例子(减去许多其他函数):

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class main {

    public static void main(String[] args) {

        List<String> zlist = new ArrayList();
        zlist.forEach(fileName -> { // CONTENT-ASSIST BREAKS HERE
            String test = "";
            if (true) { // CONTENT-ASSIST WORKS RIGHT AFTER THIS LINE

            }
        });

        Iterator<String> iter = null;

        while ("".equals("")){}
    }
}

由于某种原因,forEach和if语句之间没有内容辅助(Ctrl+Space)。在 Iterator while循环行中注释掉它会再次起作用,但我需要当前的设置。该文件运行正常,没有错误。有没有理由发生这种情况,是否有适当的解决办法?

  • 我检查过:Window > Preferences > Java > Editor > Content Assist > Advanced并检查了Java Proposals
  • -clean 模式下启动Eclipse没有帮助,也没有清理或重建项目。
  • 即使在新的工作区中,当我使用相同的代码创建新文件(它是项目中唯一的文件)时,也会出现问题。

我的设置是:面向Web开发人员的Eclipse Java EE IDE,Neon.1发行版(4.6.1)。 Windows 7 64位。

以下是错误的一些屏幕截图:

Working content-assist before the for declaration Broken content-assist between the for and the if statement Works again after the if statement Commenting out the Iterator line makes it work

最后一个截图显示了当我在底部注释掉Iterator声明时它正在工作。不太确定为什么会影响自动完成。

0 个答案:

没有答案