我是java的初学者,参加普林斯顿大学提供的算法算法.在课程中,教授要求我们将algs4.jar下载到一个文件夹中,并将algs4.jar添加到类路径中.[1]
我一步一步地跟着它,尝试编程HelloWorld之类的
import edu.princeton.cs.algs4.StdOut; public class HelloWorld { public static void main(String args[]) { StdOut.print("Hello World!"); } }
但是当我编译文件时,控制台提醒我
NPP_EXEC: "java_Compile_Run" NPP_SAVE: G:\java\helloworld\HelloWorld.java javac -encoding UTF-8 "G:\java\helloworld\HelloWorld.java" Process started >>> <<< Process finished. (Exit code 0) ==========?????????========== java -cp "G:\java\helloworld" "HelloWorld" Process started >>> Exception in thread "main" java.lang.NoClassDefFoundError: edu/princeton/cs/algs4/StdOut at HelloWorld.main(HelloWorld.java:5) Caused by: java.lang.ClassNotFoundException: edu.princeton.cs.algs4.StdOut at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 1 more <<< Process finished. (Exit code 1) ================ READY ================
我检查了我的类路径和我的编程文件.这个错误是什么意思?我该如何解决?
任何建议都有帮助.谢谢.
[1] http://algs4.cs.princeton.edu/code/
如果您指的是应该在类路径上的jar文件,则必须明确命名.例如
java -cp "G:/java/helloworld;G:/whereever/algs4j.jar" HelloWorld
他们真的提供另一个名字System.out
吗?在这种情况下,您也可以通过使用System.out
而不是安全地忽略该jarStdOut