Vim Eclim不再检测主类了?

Vim Eclim不再检测主类了?,vim,eclim,Vim,Eclim,Eclim守护程序正在运行。 :PingEclim产生 eclim 2.3.2 eclipse 4.3.1 文件:Foo.java public class Foo { public static void main(String[] args) { System.out.print("Foo"); } } 通过运行:Java,我看到了错误 java.lang.RuntimeException:尚未设置必需的设置“org.eclim.java.run.mainclass”。

Eclim守护程序正在运行。
:PingEclim
产生

  • eclim 2.3.2
  • eclipse 4.3.1
文件:Foo.java

public class Foo {
  public static void main(String[] args) {
    System.out.print("Foo");
  }
}
通过运行
:Java
,我看到了错误

java.lang.RuntimeException:尚未设置必需的设置“org.eclim.java.run.mainclass”。

现在,我知道我可以在项目设置中手动设置main类,但过去只需运行
:Java
。此外,我可以补充一点,运行
:Java%
也不起作用。它似乎无法检测到我的主要功能

更新 包括以下
:Java%
的输出。

错误:无法找到或加载主类.Foo
[java]java结果:1

更新2

Eclim似乎在第一次检测并运行项目内的主函数时设置了主类。之后,尝试手动运行另一个包含主函数的类将导致上述错误。我不知道如何解决这个问题,但它确实可以不被锁定到首先运行的类。

我也有同样的问题。然后我发现如果主类包含在包中,则必须使用完整的限定类名。例如,如果主类以以下内容开头:

package a.b.c;
然后使用以下设置:

org.eclim.java.run.mainclass = a.b.c.Foo

在那之后,它应该可以正常工作。

我也有同样的问题。我比较了两个项目,一个是由eclim完成的,另一个是在eclipse中完成的

.classpath文件位于:

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

埃克里姆



因此,我尝试将其更改为类似eclipse的设置,但效果良好。

在哪里可以添加此设置?没关系,我找到了。在vim中运行
:ProjectSettings
,将打开文件放置位置。
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry kind="output" path="bin"/>
</classpath>