当前位置: 代码迷 >> java >> eclim没有在vim中执行自动补全
  详细解决方案

eclim没有在vim中执行自动补全

热度:67   发布时间:2023-07-17 21:03:08.0

当我用Vim编码时,我安装了eclim并开始运行eclipse无头服务器。

现在我去vim ,然后输入

:PingEclim

它显示此,

eclim 2.4.1
eclipse 4.4.0

然后我也做了验证

:EclimValidate

它给出正确的输出,

Result: OK, required settings are valid.

但是当我尝试使用其自动完成功能时,可以这样说

System.<ctl + x><ctl + u>

它绝对不做任何事情。 没有代码完成。

我需要帮助,关于为什么它不起作用,

我的java项目的classpath文件是这个,

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src/java"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry kind="output" path="bin"/>
</classpath>

我刚刚习惯了eclim,所以java类代码是这样

package org.test;

public class TestMain
{
    public static final void main(String[] args) {
        System.  // I am just not able to get any autocompletion after that . 
    }
}

我的项目树是这个

.
|-- bin
|   `-- org
|       `-- test
|           `-- TestMain.class
`-- src
    `-- java
        `-- org
            `-- test
                |-- TestMain.java
                `-- TestMain.java~

好吧,我想我解决了我的问题。 就我而言,这是一个我无法弄清楚为什么它不起作用的问题,但是我知道了它应该如何起作用。

我认为可能是因为我安装了YouCompleteMe ,但是我不得不通过在.vimrc以下代码来覆盖存储在eclim中的默认自动完成功能。

let g:EclimCompletionMethod = 'omnifunc'

现在,当eclim注册到与youcompleteme(YCM)链接的omn??ifunc时它就可以完美地工作,然后所有这些实时发生。

希望这种情况能对某人有所帮助。 我无法找到一个地方来解释YCM和eclim之间的这种冲突,因此必须自己解决所有问题。

  相关解决方案