简体   繁体   English

为什么在Java中收到NoClassDefFoundError?

[英]Why am I getting a NoClassDefFoundError in java?

I managed to successfully compile my code, but I'm not able to execute it. 我设法成功地编译了我的代码,但是我无法执行它。 How do I fix this? 我该如何解决? scannerTesting is my package and ScannerTesting.java is my main file. ScannerTesting是我的软件包,ScannerTesting.java是我的主文件。

D:\\Java>javac Testing\\src\\scannerTesting\\ScannerTesting.java

D:\\Java>java Testing\\src\\scannerTesting\\ScannerTesting Exception in thread "main" java.lang.NoClassDefFoundError: Testing\\src\\scannerTesting\\ScannerTesting <wrong name: scannerTesting/ScannerTesting> . D:\\Java>java Testing\\src\\scannerTesting\\ScannerTesting Exception in thread "main" java.lang.NoClassDefFoundError: Testing\\src\\scannerTesting\\ScannerTesting <wrong name: scannerTesting/ScannerTesting> . .

java -cp ./Testing/src scannerTesting.ScannerTesting

When you run java , it looks for matching classes within its classpath. 运行java ,它将在其classpath中寻找匹配的类。 So what these arguments are doing is add your source folder to the classpath using -cp , and specify that the class that should be run is scannerTesting.ScannerTesting . 因此,这些参数的作用是使用-cp将源文件夹添加到类路径中,并指定应运行的类为scannerTesting.ScannerTesting

For more information, check out java cli tool documentation at Oracle 有关更多信息,请查看Oracle的java cli工具文档。

scannerTesting is your package name,right? ScannerTesting是您的包裹名称,对吗?

If so, I suggest you run command "java" under the workspace D:\\Java\\Testing\\src 如果是这样,我建议您在工作空间D:\\ Java \\ Testing \\ src下运行命令“ java”

java scannerTesting.ScannerTest

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM