执行java类文件的问题

时间:2011-09-21 07:31:22

标签: java javac

我是java的新手。我写了一个简单的代码:

import java.io.*;


public class a
{
    public static void main(String []argc)
    {
        System.out.println("S");
    }
}

我用下面的bash命令编译它:

javac a.java

然后这个:

java a

但它说:

无法找到或加载主类

我的java版本是1.6.0。 我该怎么办?

3 个答案:

答案 0 :(得分:8)

这样做的一个常见原因是您已设置环境变量CLASSPATH

这通常不是一个好主意,因为该设置总是会影响整个系统。

您可以通过指定-cp参数轻松定义每个实例的类路径。

在你的情况下你可以做到

java -cp . a

这告诉Java在当前目录(.)中查找类。

答案 1 :(得分:5)

使用它来运行:

java -cp . a

基本上,您需要将编译好的.class文件所在的目录添加到类路径(在您的情况下是当前目录.)。

此外,您的代码目前不使用外部库中的其他API,但很可能您会继续使用。在这种情况下,请确保在运行代码时将这些JAR添加到类路径中(使用java -cp .;<jar1 path>;<jar2 path> a)。

答案 2 :(得分:1)

您需要指定包含当前目录的类路径:

java -cp ./ a