我只是想编译并运行一个非常简单的测试程序,但它根本不起作用,而且我不知道问题是什么。
我有一个java项目,一直压在我身上,而我对java知之甚少。特别是从 Windows 命令行编译。
我有两个 Jars,我需要用它们来编译一个简单的“hello world”程序。
这是我的“build.bat”
C:\jdk1.6.0_21\bin\javac -cp "C:\Users\FREYERA\Desktop\Test";"C:\Users\FREYERA\Desktop\Test\test1.jar";"C:\Users\FREYERA\Desktop\Test\test2.jar"; "C:\Users\FREYERA\Desktop\Test\sample.java"
那么我:
C:\jdk1.6.0_21\bin\java sample
这会返回错误:
Exception in thread "main" java.lang.NoClassDefFoundError: sample Caused by: java.lang.ClassNotFoundException: sample at java.net.URLClassLoader$1.run(URLClassLoader.java:202) at java.security.AccessController.doPrivileged(Native Method at java.net.URLClassLoader.findClass(URLClassLoader.java:190 at java.lang.ClassLoader.loadClass(ClassLoader.java:307) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java: at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
无论我如何设置我的类路径,我都无法让这个 HELLO WORLD 程序运行。
有人可以帮我吗?我正在拔头发。
最佳答案
您还可以指定解释器的类路径来定位您的类:
java -classpath "C:\Users\FREYERA\Desktop\Test";"C:\Users\FREYERA\Desktop\Test\test1.jar";"C:\Users\FREYERA\Desktop\Test\test2.jar"; Sample
这将从任何工作目录运行您的类。
关于java - 编译基本 Hello World 程序时抛出 ClassNotFoundException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3346344/