java.lang.NoClassDefFoundError/无法找到或加载主类

java.lang.NoClassDefFoundError/无法找到或加载主类,java,jar,Java,Jar,我有一个“prog.java”文件,其中的main方法使用lib.jar 根文件夹: prog.java lib.jar 我有: javac-cp lib.jar prog.java 现在,我的根文件夹: 根文件夹: prog.java lib.jar 程序类 进步$1.5级 现在我尝试运行我的程序: java -cp lib.jar prog 我得到: Error: Could not find or load main class Prog Exception in thread

我有一个“prog.java”文件,其中的main方法使用lib.jar

根文件夹:

  • prog.java
  • lib.jar
我有:
javac-cp lib.jar prog.java

现在,我的根文件夹: 根文件夹:

  • prog.java
  • lib.jar
  • 程序类
  • 进步$1.5级
现在我尝试运行我的程序:

java -cp lib.jar prog
我得到:

Error: Could not find or load main class Prog
Exception in thread "main" java.lang.NoClassDefFoundError
如果我这样做:

java prog
我得到:

Error: Could not find or load main class Prog
Exception in thread "main" java.lang.NoClassDefFoundError
请帮忙

java -cp .:lib.jar prog

注意点。还要确保文件名与类名匹配。最后,最好将类名和文件名都以大写字母开头(约定)。

您还需要将
.class
文件添加到类路径中。为此,您应该添加包含已编译类的“root”文件夹。由于您的
prog
类似乎位于一个未命名的包中,所以只需将类路径设置为
lib.jar:.
(Linux上的类路径分隔符
)或
lib.jar(Windows上的类路径分隔符
)。点
表示当前目录,在您的情况下,它包含编译的
.class
文件


注意最好将Java类放在一个文件夹中。

可以包含文件的代码吗?确保还包括包名。顺便说一下,您的类应该与文件同名,
Prog.java
,而不是
Prog.java
,谢谢。你救了我的命!!