Eclipse编译的文件不能由java命令运行

时间:2017-04-29 17:43:06

标签: java eclipse

在Eclipse中编写简单的Java Application时,会自动编译这些文件并将它们存储在项目根文件夹的bin /文件夹中。

现在如果我导航到/ bin文件夹和包含.class文件的文件夹,我想通过下面的java命令运行,我收到以下错误 - :

  

java A.   错误:找不到或加载主类A

A类:

package assurance;

public class A {

    public static void main(String[] args) {
        System.out.println("Hello World");
    }
}

虽然A类有一个main方法,但是当我右键单击该文件并执行Run As Java Application时运行正常。但它不会像java命令那样运行。

为什么会这样?

更新

尝试使用以下命令 - :

java -cp "A.class" assurance.A
java -cp "A" assurance.A
java -cp "*" assurance.A

1 个答案:

答案 0 :(得分:2)

它适用于Eclipse,因为Eclipse只使用正确的-cp和正确的命令运行它:)

使用以下命令运行代码: java -cp "./" assurance.A""用于某些奇怪的cmd解释器,例如Windows XP) 从“默认包”目录(顶级包目录)运行命令非常重要。

Java将包名称(assurance)解释为类文件的目录路径。想象一下,如果它用.替换/并添加.class扩展名 (assurance.A => ./assurance/A.class

此处有更多详情:http://docs.oracle.com/javase/7/docs/technotes/tools/windows/classpath.html