eclim在vim中无法进行自动补全

7

我安装了eclim,并开始运行Eclipse无头服务器,因为我正在使用Vim编码。

现在我去了Vim,并输入了以下内容:

:PingEclim

它显示这个:

eclim 2.4.1
eclipse 4.4.0

然后我也进行了验证:

:EclimValidate

并且它会给出正确的输出,

Result: OK, required settings are valid.

但是,当我尝试使用它的自动补全功能时,比如说:
System.<ctl + x><ctl + u>

它什么也不做,没有代码补全。

我需要帮助,想知道为什么它不起作用,

我的Java项目的类路径文件是这样的,

<?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~
1个回答

5

好的,我猜我解决了我的问题。在我的情况下,这是一个问题,我只是无法弄清为什么它不起作用,但是我弄清楚了它应该如何工作。

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

let g:EclimCompletionMethod = 'omnifunc'

现在这个过程完美地运作,因为 eclim 注册到了 omnifunc,并与 youcompleteme(YCM) 相链接,所有操作都是实时的。
希望这个例子能对某些人有所帮助。我没有找到任何一个地方解释 YCM 和 eclim 之间的冲突,只能自己摸索。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接