Java 尝试 运行 时出现 NoClassDefFound 错误

Java NoClassDefFound Error when trying to run

我对使用 java 中的包还很陌生,但我有一个文件结构:

每个 java 文件的顶部都有包 package src.com.main;。 我正在使用 javac -d ./classes/ ./src/com/main/*.java 从项目文件夹进行编译,并且编译正常。当我使用 java classes/src/com/main/Billing 转到 运行 时,它给了我一个 NoClassDefFound 异常。我做错了什么?

编辑:整个错误:
java classes/src/com/main/BillingException in thread "main" java.lang.NoClassDefFoundError: classes/src/com/main/Billing (wrong name: src/com/main/Billing) at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClass(ClassLoader.java:800) at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) at java.net.URLClassLoader.access0(URLClassLoader.java:71) at java.net.URLClassLoader.run(URLClassLoader.java:361) at java.net.URLClassLoader.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:425) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:358) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

您的 class 文件不在可能是这种情况的 class 路径中。

如果您正在使用 maveneclipse 尝试命令 mvn eclipse:eclipse

您可以使用命令提示符设置 class路径,也可以在您的 .class 文件所在的位置设置。

例如:

C:> 设置 CLASSPATH=classpath1;classpath2..

尝试

cd project/classes/
java -cp . src.com.main.Billing

我想你在你的 class 中使用了其他 class ,如果是这样的话!您需要定义 Class 路径以启用 java 找到您的依赖项。