我是java的新手.我写了一个这样的简单代码:
import java.io.*;
public class a
{
public static void main(String []argc)
{
System.out.println("S");
}
}
Run Code Online (Sandbox Code Playgroud)
我使用下面的bash命令编译它:
javac a.java
Run Code Online (Sandbox Code Playgroud)
这个:
java a
Run Code Online (Sandbox Code Playgroud)
但它说:
无法找到或加载主类a
我的java版本是1.6.0.我该怎么办?
一个常见的原因是您已设置环境变量CLASSPATH.
这通常不是一个好主意,因为该设置总是会影响整个系统.
您可以通过指定-cp参数轻松定义每实例类路径.
在你的情况下,你可以做到
java -cp . a
Run Code Online (Sandbox Code Playgroud)
这告诉Java在当前目录(.)中查找类.
用它来运行:
java -cp . a
基本上,您需要将编译.class文件所在的目录添加到类路径(.在您的情况下是当前目录).
此外,您的代码此时不使用外部库中的其他API,但很可能您将继续使用.在这种情况下,请确保java -cp .;<jar1 path>;<jar2 path> a在运行代码时将这些JAR添加到类路径(使用)中.